PHP 常用的四個fetch的區別
阿新 • • 發佈:2018-11-12
在php中,經常使用mysqli_fetch從資料庫返回的結果集中取資料,最常用的是mysqli_fetch_assoc(),mysqli_fetch_row(),mysqli_fetch_array(),mysqli_fetch_object(),在使用時,它們的差異如下:
$publicMes = mysqli_fetch_assoc($res);
var_dump($publicMes);
結果如下:
$a = mysqli_fetch_row($res);
var_dump($a);
結果如下
$b = mysqli_fetch_array($res); var_dump($b); echo $b[1].'<br/>'; echo $b['user'];
結果如下:
$c = mysqli_fetch_object($res);
var_dump($c);
結果如下:
綜上:
fetch_assoc() 返回的是關聯陣列,使用資料庫欄位作為鍵值來取值,
fetch_row()返回的是索引陣列,使用索引取值,
fetch_array()返回的是關聯陣列,既有索引號,也有欄位,通過這兩種方式都能取值,
fetch_object()返回的是物件.
注意:
所有的fetch從資料庫返回的結果集中取資料 每次只取一條,取完指標下移,下次使用再取新的,因此需要使用while迴圈來取盡所有值,如果迴圈之前使用了一次fetch會導致資料不全