PHP では、JSON 形式の文字列を配列に変換するのは非常に簡単なプロセスです。この目的に使用できる PHP 組み込み関数は、json_decode() と json_decode_object() の 2 つです。
1. json_decode() 関数を使用する
json_decode() 関数は、JSON 形式の文字列を PHP 配列に変換する一般的な方法です。
構文:
<code>mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] )</code>
その中に:
- $json: 解析する必要がある JSON 文字列;
- $assoc: 返されたオブジェクトを連想配列に変換するかどうか。値が TRUE の場合は、デフォルトでは、連想配列に変換されません。
- $ Depth: 再帰の深さを設定します。デフォルトは 512 です。メモリのオーバーフローを避けるために、実際の状況に応じてこの値を調整できます。 options: オプションのパラメーター。JSON を解析するためのオプションを指定できます。
- 例:
JSON 形式の文字列を配列に変換します:
<code><?php $json_string = '{"name": "Tom", "age": 30, "sex": "male"}'; $decoded_json = json_decode($json_string); print_r($decoded_json); ?></code>
出力:
<code>stdClass Object ( [name] => Tom [age] => 30 [sex] => male )</code>
上記のコードでは、まず JSON 形式の文字列を定義し、次に json_decode() 関数を呼び出して文字をデコードします。文字列を PHP 配列 $decoded_json に格納し、結果を出力します。
返された結果を連想配列に変換したい場合は、$assoc パラメーターを TRUE に設定する必要があります:
<code><?php $json_string = '{"name": "Tom", "age": 30, "sex": "male"}'; $decoded_json = json_decode($json_string, true); print_r($decoded_json); ?></code>
出力:
<code>Array ( [name] => Tom [age] => 30 [sex] => male )</code>
上記の出力からわかるように、配列 $decoded_json は最後の出力オブジェクト。この時点で $assoc が TRUE に設定され、連想配列に変換されるためです。 $assoc が設定されていない場合、デフォルトでは配列ではなくオブジェクトが返されます。
2. json_decode_object() 関数を使用する
json_decode() 関数に加えて、PHP には、JSON 形式の文字列を PHP 配列に変換する別の方法である json_decode_object() 関数も用意されています。
構文:
<code>object json_decode_object ( string $json_string [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )</code>
その中に:
$json_string: 解析する必要がある JSON 文字列;- $assoc: 値が TRUE の場合、返されたオブジェクトを連想配列に変換するかどうか。デフォルトでは、連想配列に変換されません。
- $ Depth: 再帰の深さを設定します。デフォルトは 512 です。メモリのオーバーフローを避けるために、実際の状況に応じてこの値を調整できます。 options: オプションのパラメーター。JSON を解析するためのオプションを指定できます。
- 例:
- JSON 形式の文字列を配列に変換する:
<code><?php $json_string = '{"name": "Tom", "age": 30, "sex": "male"}'; $decoded_json = json_decode_object($json_string); print_r($decoded_json); ?></code>
出力:
<code>stdClass Object ( [name] => Tom [age] => 30 [sex] => male )</code>
上記のコードでは、 json_decode_object() 関数を使用して、JSON 文字列を PHP 配列 $decoded_json に変換します。 $assoc パラメータを設定していないため、デフォルトでは配列ではなくオブジェクトを返します。
概要
PHP では、 json_decode() 関数と json_decode_object() 関数を使用して、JSON 形式の文字列を PHP 配列に変換できます。どちらの機能にも利点があり、どちらを選択するかは特定のニーズによって異なります。結果をオブジェクトにしたい場合は json_decode_object() を使用し、結果を配列にしたい場合は json_decode() を使用します。使用中は、メモリ オーバーフローを避けるために、実際の状況に応じて $ Depth パラメータと $options パラメータの値を調整する必要もあります。
以上がJSON文字列を配列PHPに変換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、効率的なPHPアレイ重複排除について説明します。 Array_unique()などの組み込み関数をカスタムハッシュマップアプローチと比較し、配列のサイズとデータ型に基づいてパフォーマンスのトレードオフを強調します。 最適な方法は、プロビリに依存します

この記事では、PHPアレイの重複排除を分析し、素朴なアプローチ(O(n²))のパフォーマンスボトルネックを強調しています。 カスタム関数、splobjectStorage、およびハッシュセットの実装を使用して、array_unique()を使用して効率的な代替案を調査し、達成します

この記事では、Keyの一意性を使用してPHPアレイ重複排除について説明します。 直接的な重複除去方法ではありませんが、キーユニークネスを活用することで、キーに値をマッピングして重複を上書きすることにより、一意の値を持つ新しい配列を作成できます。 このAP

この記事では、RabbitMQとRedisを使用してPHPでメッセージキューを実装する詳細を示します。 それは、それらのアーキテクチャ(AMQP対インメモリ)、機能、および信頼性メカニズム(確認、トランザクション、永続性)を比較します。デザインのベストプラクティス、エラー

この記事では、PSRの推奨事項(PSR-1、PSR-2、PSR-4、PSR-12)に焦点を当てた現在のPHPコーディング基準とベストプラクティスを検証します。 一貫したスタイリング、意味のある命名、EFFを通じてコードの読みやすさと保守性を改善することを強調しています

この記事では、PHP拡張機能のインストールとトラブルシューティングの詳細で、PECLに焦点を当てています。 インストール手順(検索、ダウンロード/コンパイル、サーバーの再起動、再起動)、トラブルシューティングテクニック(ログのチェック、インストールの確認、

この記事では、大規模なデータセットのPHPアレイ重力化の最適化について説明します。 Array_unique()、array_flip()、splobjectStorage、事前ソートなどの手法を調べ、効率を比較します。 大規模なデータセットの場合、チャンク、データブを示唆しています

この記事では、PHPの反射APIについて説明し、クラス、方法、およびプロパティのランタイム検査と操作を可能にします。 一般的なユースケース(ドキュメンテーション生成、ORM、依存関係注入)とパフォーマンスオーバーヘアに対する注意の詳細


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

Dreamweaver Mac版
ビジュアル Web 開発ツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

メモ帳++7.3.1
使いやすく無料のコードエディター
