PHP で JSON データを生成するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-19 22:05:02
オリジナル
366 人が閲覧しました

How to Generate JSON Data in PHP?

PHP での JSON データの生成

よくある質問の 1 つは、PHP で JSON データを生成する方法です。このクエリの解決策を見ていきましょう。

PHP で JSON データを作成するには、汎用性の高い json_encode() 関数を使用します。これにより、配列またはオブジェクトを JSON 文字列に変換できます。

データベース クエリを処理し JSON を生成するための PHP コード

次のデータベース テーブルと PHP コードを次のように考えてください。例:

<code class="php">CREATE TABLE Posts {
id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(200),
url VARCHAR(200)
}</code>
ログイン後にコピー
<code class="php">// Select 20 records from the Posts table
$sql = mysql_query("select * from Posts limit 20");

// Start JSON output
echo '{"posts": [';

// Iterate through the result set and create JSON object
while ($row = mysql_fetch_array($sql)) {
    $title = $row['title'];
    $url = $row['url'];

    echo '{
        "title": "' . $title . '",
        "url": "' . $url . '"
    },';
}

// Close JSON output
echo ']}';</code>
ログイン後にコピー

このコードでは、Posts テーブルから 20 行を抽出し、行ごとに JSON オブジェクトを作成し、それらを JSON 配列でラップします。このコードは、レガシー データベース拡張機能である mysql に固有のものです。

mysqli を使用した JSON 生成の改善

データベースを操作するには、次のことをお勧めします。 mysql の代わりに mysqli を使用してください。改善されたコードの例を次に示します。

<code class="php">$sql = "select * from Posts limit 20";
$result = $db->query($sql);
$posts = $result->fetch_all(MYSQLI_ASSOC);
echo json_encode($posts);</code>
ログイン後にコピー

この更新されたコードでは、fetch_all() を使用して、一致するすべての行を連想配列として取得します。これは、次を使用して JSON に直接変換できます。 json_encode().

JSON をファイルに保存する

JSON データをファイルに保存するには、file_put_contents( ):

<code class="php">file_put_contents('myfile.json', json_encode($posts));</code>
ログイン後にコピー

このコードは、JSON データを myfile.json という名前のファイルに保存します。

結論

PHP での JSON データの生成は、json_encode() などの専用関数を使用する簡単なタスクです。これらのテクニックを理解することで、PHP アプリケーションでデータの変換と交換を効果的に処理できるようになります。

以上がPHP で JSON データを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!