ホームページ > バックエンド開発 > PHPの問題 > PHP JSONをオブジェクト配列オブジェクトに変換する方法

PHP JSONをオブジェクト配列オブジェクトに変換する方法

PHPz
リリース: 2023-03-29 11:40:49
オリジナル
735 人が閲覧しました

json をオブジェクト、配列、オブジェクト配列に変換することは、PHP では非常に一般的な操作です。 Web開発ではフロントエンドやバックエンドの通信でjsonデータ形式を使用することが多く、PHPが提供するjson拡張機能を利用することでjson形式データの処理が非常に簡単になります。

この記事では、json データをオブジェクト、配列、オブジェクト配列に変換する方法を紹介します。

  1. json データをオブジェクトに変換する

以下に示すように、json_decode() 関数を使用して json データをオブジェクトに変換します。

$json_string = '{"name":"Tom","age":20}';
$obj = json_decode($json_string);
ログイン後にコピー

上記のコードjson形式の文字列をオブジェクト$objに変換します。 json_decode() 関数は、デフォルトで json データを PHP の stdClass オブジェクトに変換することに注意してください。

以下に示すように、PHP で json データを連想配列に変換することもできます。

$json_string = '{"name":"Tom","age":20}';
$arr = json_decode($json_string,true);
ログイン後にコピー

上記のコードは、json データを連想配列 $arr に変換します。 json_decode() 関数で 2 番目のパラメーターを true として渡すと、json データを PHP 連想配列に変換できます。

  1. json データを配列に変換する

json データを配列に変換するには、以下に示すように、 json_decode() 関数の 2 番目のパラメーターを true に設定するだけです。

$json_string = '[{"name":"Tom","age":20},{"name":"Jane","age":19}]';
$arr = json_decode($json_string,true);
ログイン後にコピー

上記のコードは、json 配列データを PHP の連想配列 $arr に変換します。

  1. json データをオブジェクト配列に変換する

json データをオブジェクト配列に変換するには、json_decode() 関数の 2 番目のパラメーターを true に設定する必要がありますが、変換取得されるのは、以下に示すようなオブジェクト配列です。

$json_string = '[{"name":"Tom","age":20},{"name":"Jane","age":19}]';
$arr_obj = json_decode($json_string);
ログイン後にコピー

上記のコードは、json 配列データをオブジェクト配列 $arr_obj に変換します。各 json データ項目は、 json_decode() 関数の 2 番目のパラメーターを渡さずにオブジェクトに変換できます。

以下に示すように、foreach ループを使用してオブジェクト配列を走査できます。

foreach ($arr_obj as $item) {
    echo "name: " . $item->name . "; age: " . $item->age . "\n";
}
ログイン後にコピー

上記のコードは、オブジェクト配列内の各オブジェクトの名前と年齢属性を出力できます。

上記はjsonデータをオブジェクト、配列、オブジェクト配列に変換する方法です。読者の皆様が、実際の開発においてjson拡張機能を柔軟に活用して、jsonデータを高速に処理していただければ幸いです。

以上がPHP JSONをオブジェクト配列オブジェクトに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート