php で json を配列に変換するメソッド: 1. PHP サンプル ファイルを作成します; 2. JSON データを定義します; 3. "json_decode($json,true)" メソッドを通じて json を配列に変換します。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、DELL G3 コンピューター
php はどのように json を実装しますか? to array?
json_decode()
この関数は、json テキストを対応する PHP データ構造に変換するために使用されます。
以下は例です:
$json ='{"foo": 12345}'; $obj = json_decode($json); print $obj->{'foo'};// 12345
通常、json_decode() は常に配列ではなく PHP オブジェクトを返します。例:
$json ='{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json));
その結果、PHP オブジェクトが生成されます:
object(stdClass)#1 (5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) }
PHP 連想配列の生成を強制したい場合は、json_decode() にパラメーター true を追加する必要があります:
$json ='{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json,true));
結果は、「連想配列が生成されます:
array(5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) }
次の 3 つの json の書き方はすべて間違っています。どこにエラーがあるかわかりますか?」
json_decode() のよくある間違い
$bad_json ="{ 'bar': 'baz' }"; $bad_json ='{ bar: "baz" }'; $bad_json ='{ "bar": "baz", }';
最初の間違いは、json 区切り文字 (デリミタ) では一重引用符ではなく二重引用符のみが使用できることです。 2 番目の間違いは、JSON の名前と値のペアの「名前」 (コロンの左側の部分) では、いかなる場合でも二重引用符を使用する必要があることです。 3 番目のエラーは、最後の値の後にカンマを追加できないことです。これら 3 つの文字列に対して json_decode() を実行すると、null が返され、エラーが報告されます。
さらに、json はオブジェクトと配列を表すためにのみ使用できます。文字列または値に対して json_decode() を使用すると、null が返されます。
var_dump(json_decode("Hello World"));//null
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPでJSONを配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。