查詢執行與擷取
從 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中文網其他相關文章!