ホームページ >データベース >mysql チュートリアル >MySQL クエリ結果を PHP で JSON として効率的にエンコードするにはどうすればよいですか?
クエリの実行と取得
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() 関数を使用して、すべてのクエリ結果を配列で取得します。 1 回:
$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);
JSON エンコーディングに mysqli_fetch_all() を使用する
mysqli_fetch_all() 関数は、行の配列を作成することで JSON エンコーディング プロセスを簡素化できます。結果変数を json_encode() に渡すだけで、データが自動的に JSON 形式に変換されます。
以上がMySQL クエリ結果を PHP で JSON として効率的にエンコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。