首頁  >  文章  >  後端開發  >  淺析php怎麼將查詢結果以陣列形式傳回

淺析php怎麼將查詢結果以陣列形式傳回

PHPz
PHPz原創
2023-04-04 09:15:00656瀏覽

在PHP中,查詢資料庫是非常常見的任務之一。查詢的結果可能會涉及多行、多列數據,這時候我們就需要將查詢結果處理成一個數組,以便於後續的處理。

本文將介紹幾種將查詢結果以陣列形式傳回的方法。

1. 使用fetch_assoc()

fetch_assoc()函數是MySQLi類別中的函數,用於將查詢結果從資源物件中提取出來,合併成一個關聯數組。關聯數組由列名作為鍵,資料作為值,可以很方便地處理資料。

下面是使用fetch_assoc()函數的範例:

// 连接MySQL数据库
$con = mysqli_connect("localhost","root","","test");

// 查询
$result_set = mysqli_query($con, "SELECT * FROM products");

// 结果形成数组
while ($row = mysqli_fetch_assoc($result_set)) {
    $result_array[] = $row;
}

// 输出数组
print_r($result_array);

2. 使用fetch_row()

fetch_row()函數也是MySQLi類別中的函數,用於將查詢結果從資源物件中提取出來,合併成一個索引數組。索引數組由資料表中的列號作為下標,資料作為值。

下面是一個使用fetch_row()函數的範例:

// 连接MySQL数据库
$con = mysqli_connect("localhost","root","","test");

// 查询
$result_set = mysqli_query($con, "SELECT * FROM products");

// 结果形成数组
while ($row = mysqli_fetch_row($result_set)) {
    $result_array[] = $row;
}

// 输出数组
print_r($result_array);

3. 使用fetch_all()

fetch_all()函數是MySQLi類別中新增的函數,用於將查詢結果從資源物件中提取出來,合併成一個二維數組。二維數組由行號和列號作為下標,資料作為值。

下面是使用fetch_all()函數的範例:

// 连接MySQL数据库
$con = mysqli_connect("localhost","root","","test");

// 查询
$result_set = mysqli_query($con, "SELECT * FROM products");

// 结果形成数组
$result_array = mysqli_fetch_all($result_set, MYSQLI_ASSOC);

// 输出数组
print_r($result_array);

總結

以上是查詢結果形成陣列的三種基本方法,分別使用fetch_assoc(), fetch_row () 和fetch_all()函數。其中,fetch_assoc()函數適用於大部分情況,因為它提供了最方便的處理方式。而fetch_row()函數和fetch_all()函數主要用於特定情況下的處理。

在實際應用中,也可以根據實際需求進行陣列的處理,例如使用array_map()和array_column()函數來對陣列元素進行操作和提取等等。

以上是淺析php怎麼將查詢結果以陣列形式傳回的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn