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參數: 數組,數組的鍵即為對應的字段名,你使用時可以像這樣:
row[′firstname′]、row['lastname']…..
$row[0]、row[1]…..