在 PHP 中,取得 MySQL 資料通常涉及使用 mysql_fetch_array() 來取得選定的記錄。但是,此方法一次僅檢索一行。對於需要將所有選定行聚合到數組中的情況,存在替代方法。
mysql_fetch_assoc()
mysql_fetch_array() 的一種替代方法是 mysql_fetch_assoc()。此函數檢索下一行資料並將其作為關聯數組傳回,以列名作為鍵。循環可用於迭代所有行並填充數組。
<code class="php">$result = mysql_query("SELECT * FROM $tableName"); $rows = array(); while($row = mysql_fetch_assoc($result)){ $rows[] = $row; }</code>
mysqli_fetch_all()
適合更喜歡MySQLi 擴充而不是MySQLi 擴充的PHP 開發人員較舊的my_* 函數,mysqli_etch_my(sql種以陣列形式檢索結果集中所有行的便捷方法。
<code class="php">$query = "SELECT * FROM table"; $result = mysqli_query($db, $query); $rows = mysqli_fetch_all($result, MYSQLI_ASSOC);</code>
MYSQLI_ASSOC 參數指定行應以關聯陣列傳回。
填入後,$rows 陣列將包含所有選定的記錄,並且可以進一步處理、轉換為 JSON 或根據需要在程式碼中使用。
以上是如何在 PHP 中有效率地將多個 MySQL 行檢索到數組中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!