php怎麼將記錄集轉為陣列(三種方法)

PHPz
發布: 2023-04-19 11:26:57
原創
768 人瀏覽過

PHP中的記錄集是指透過資料庫查詢操作所得到的結果集合,通常是用來取得某個資料表中的資料。在使用記錄集時,我們經常需要將其轉換為陣列格式,以便更方便的進行資料處理。

下面我們將給出PHP中將記錄集轉換為陣列的幾種方法。

方法一:使用 mysqli_fetch_all() 函數

mysqli_fetch_all() 是 PHP 中的內建函數,用於從結果集中取得所有行的數據,傳回一個二維數組。

範例程式碼:

$query = "SELECT * FROM mytable";
$result = mysqli_query($conn, $query);
$data = mysqli_fetch_all($result, MYSQLI_ASSOC);
print_r($data);
登入後複製

以上程式碼中,$conn 是連接資料庫時傳回的連接句柄,$query 是查詢語句,$result 是查詢結果集,$data 是我們要得到的數組。

方法二:使用 while 迴圈並利用陣列新增

我們可以在 while 迴圈中逐行將結果集加入到陣列中。由於每次新增操作都是在陣列的尾部進行,因此產生的陣列也是二維數組。

範例程式碼:

$query = "SELECT * FROM mytable";
$result = mysqli_query($conn, $query);
$data = array();
while ($row = mysqli_fetch_assoc($result)) {
    $data[] = $row;
}
print_r($data);
登入後複製

以上程式碼中,$row 是每一行的數據,每次都會將 $row 加入到 $data 陣列中去。

方法三:使用 PDOStatement::fetchAll() 函數

PDOException::fetchAll() 是 PHP PDO 擴充的函數,用來從結果集中取得所有資料記錄,傳回一個陣列。

範例程式碼:

$query = "SELECT * FROM mytable";
$result = $pdo->query($query);
$data = $result->fetchAll(PDO::FETCH_ASSOC);
print_r($data);
登入後複製

以上程式碼中,$pdo 是透過PDO 與資料庫建立的PDO對象,$query 是查詢語句,$result是查詢的結果集,$data是我們要得到的數組。

總結

以上介紹了三種PHP 將記錄集轉換為陣列的方法,其中mysqli_fetch_all()和PDOStatement::fetchAll()函數是PHP內建函數,而while循環則是透過手動迭代實現。這三種方法各有優缺點,請依照自己的需求和具體場景選擇合適的方法。

以上是php怎麼將記錄集轉為陣列(三種方法)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!