首頁  >  文章  >  php教程  >  PHP mysqli_free_result()與mysqli_fetch_array()函數

PHP mysqli_free_result()與mysqli_fetch_array()函數

WBOY
WBOY原創
2016-09-21 13:55:44794瀏覽

mysql_free_result() 只需要在考慮到傳回很大的結果集時會佔用多少記憶體時呼叫。在腳本結束後所有關聯的記憶體都會自動釋放。

在我們執行完SELECT語句後,釋放遊標記憶體是個很好的習慣。 。可以透過PHP函數mysql_free_result()來實現記憶體的釋放。

//定义头文件,字符格式
 header("Content-type:text/html;charset=utf-8");
 error_reporting(ERR_ALL & ~ E_NOTICE); 

 //定义本地服务器连接信息
 $servername="localhost";
 $username="root";
 $password="admin";
 $dbname="test";

 //本地连接
 $conn=mysqli_connect($servername,$username,$password,$dbname)or die(mysqli_error());

//要查询的信息
$sql="SELECT firstname,lastname,email FROM hello";
$result=mysqli_query($conn,$sql);

//判断字符串是否执行成功
if($result){
 while($row=mysqli_fetch_array($result,MYSQLI_ASSOC))  {
    echo $row["firstname"]." ".$row["lastname"]." ".$row["email"]."<br>";
    echo "<hr>";
  }
}else{
  die("fetch data failed!");
}

//释放游标内存
mysqli_free_result($result); 
//关闭数据库连接
mysqli_close($conn);

注意:在此除了要講mysqli_free_result之外,我還要提一下mysqli_fetch_array()函數的第二個參數

mysqli_fetch_array(result,resulttype) 
resulttype參數: 
1:MYSQLI_ASSOC,並傳回結果陣列為數組,數組的鍵即為對應的字段,你使用時可以這樣: r
ow[firstnam row['lastname']….. 2:MYSQLI_NUM,回傳的結果數組為索引數組,數組的鍵即為0,1,2,3,4這樣的數字索引,你使用時只能這樣: $row[0]、row[1] ….. 3:MYSQLI_BOTH,傳回的結果陣列中同時存在欄位索引和數字索引,你使用時,上面兩個都可以用。   參考閱讀:http://www.manongjc.com/article/1191.html

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn