PHP では、組み込みの json_encode 関数を使用するだけで、配列を json 形式に変換することが非常に便利です。
json_encode 関数は、任意の PHP データ型を、文字列、数値、ブール値、配列、オブジェクトなどを含む json 形式の文字列に変換できます。以下は、配列を json に変換する方法を示す簡単な例です。
// 定义一个数组 $data = array( 'name' => '小明', 'age' => 25, 'gender' => '男' ); // 转换成json格式并打印出来 $json = json_encode($data); echo $json;
上記のコードを実行すると、出力結果は次のようになります。
{"name":"小明","age":25,"gender":"男"}
この配列が json 形式の文字列に変換されていることがわかります。デフォルトでは、json_encode関数は配列内のキー名をjson形式の属性名に変換し、キー値をjson形式の属性値に変換します。
特定の状況では、json_encode の出力を制御する必要がある場合があります。たとえば、出力される json 形式を読みやすくするために、インデント文字列を指定する必要がある場合があります。この時点で、json_encode 関数の 2 番目のパラメーターに制御オプションの配列を渡すことができます。
たとえば、次のコードは 2 つのスペースのインデントされた文字列を指定します。
// 定义一个数组 $data = array( 'name' => '小明', 'age' => 25, 'gender' => '男' ); // 指定缩进字符串并转换成json格式 $json = json_encode($data, JSON_PRETTY_PRINT); echo $json;
上記のコードを実行すると、出力は次のようになります。
{ "name": "小明", "age": 25, "gender": "男" }
出力 json 形式の文字列では、各属性と属性値の間に 2 つのスペースがインデントされ、文字列全体が読みやすくなります。
インデントされた文字列の指定に加えて、json_encode 関数は、非 ASCII 文字のエスケープの制御、日付形式の制御など、他のオプションも提供します。詳細については、PHP ドキュメントの json_encode 関数の関連ドキュメントを参照してください。
以上がPHPで配列をJSONデータに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。