首頁 >資料庫 >mysql教程 >如何在 PHP 中有效率地將 MySQL 查詢結果編碼為 JSON?

如何在 PHP 中有效率地將 MySQL 查詢結果編碼為 JSON?

Susan Sarandon
Susan Sarandon原創
2024-12-18 10:40:10963瀏覽

How to Efficiently Encode MySQL Query Results as JSON in PHP?

Json 編碼 MySQL 結果集

查詢執行與擷取

從 MySQL 資料庫擷取資料並儲存在PHP變量,您可以使用mysqli_query():

$sth = mysqli_query($conn, "SELECT ...");

結果的 JSON 編碼

要將查詢結果編碼為 JSON 格式,可以使用 json_encode() 函數。但是,您需要迭代結果並單獨對每一行進行編碼:

$rows = array();
while($r = mysqli_fetch_assoc($sth)) {
    $rows[] = $r;
}
print json_encode($rows);

JSON 編碼的要求

請注意,json_encode() 需要PHP 版本5.2 或更高版本和“php-json”包。如果未安裝,PHP 將嘗試自動包含它。

使用mysqli_fetch_all() 的替代方法

在現代PHP 版本中,您可以使用mysqli_fetch_all() 函數檢索數組中的所有查詢結果一次:

$result = mysqli_query($conn, "SELECT ...");
$rows = mysqli_fetch_all($result); // list arrays with values only in rows
// or
$rows = mysqli_fetch_all($result, MYSQLI_ASSOC); // assoc arrays in rows

print json_encode($rows);

使用mysqli_fetch_all() 進行 JSON 編碼

mysqli_fetch_all() 函數可以透過為您建立行數組來簡化 JSON 編碼過程。只需將 results 變數傳遞給 json_encode(),它就會自動將資料轉換為 JSON 格式。

以上是如何在 PHP 中有效率地將 MySQL 查詢結果編碼為 JSON?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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