如何使用PHP 從MySQL 表中擷取精確的行數
取得MySQL 表中的行數是一項常見任務資料庫處理。 PHP 為此提供了多種選項,特別是對於喜歡過程程式碼的人。
錯誤:
一個常見錯誤是取得單字「Array」而不是數字。當使用傳回關聯數組的 mysqli_fetch_assoc() 時會發生這種情況。
解決方案 1:使用陣列索引
要解決此問題,請存取與列名對應的陣列索引。例如:
$count = mysqli_fetch_assoc($result)['COUNT(*)'];
解決方案2:使用列別名
或者,您可以在SQL 查詢中為count 列指定別名:$sql = "SELECT COUNT(*) AS cnt FROM news"; $count = mysqli_fetch_assoc($result)['cnt'];
解決方案3:使用數值數組
另一個選項是使用mysqli_fetch_row() 檢索數值數組:$count = mysqli_fetch_row($result)[0];
PHP 8.1 優化
如果使用PHP 8.1或更高版本,您可以簡化操作:$count = mysqli_fetch_column($result);
避免使用mysqli_num_rows
雖然使用mysqli_num_rows 看起來很誘人,但此函數有很大的限制,應避免用於計算行數。物件導向程式設計方法
對於喜歡物件導向程式設計的人,相同的程式碼可以寫成:$count = $con->query($sql)->fetch_row()[0];
準備語句
當使用帶有變數的查詢時,您應該使用準備好的語句來提高安全性和效率:以上是如何使用 PHP 準確統計 MySQL 行數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!