PHP_PHP チュートリアルでの Json の包括的な分析

WBOY
リリース: 2016-07-13 10:33:25
オリジナル
921 人が閲覧しました

軽量のデータ交換形式である JSON (JavaScript Object Notation) については誰もがよく知っているはずです。人間にとって読み書きしやすい。機械による解析と生成も簡単です。これは、JavaScript プログラミング言語、標準 ECMA-262 第 3 版 (1999 年 12 月) のサブセットに基づいています。 JSON は完全に言語に依存しないテキスト形式を使用しますが、C 言語ファミリー (C、C++、C#、Java、JavaScript、Perl、Python など) に似た規則も使用します。これらの特性により、JSON は理想的なデータ交換言語になります。

JSON は 2 つの構造から構築されます:

名前と値のペアのコレクション。さまざまな言語では、オブジェクト、レコード、構造体、辞書、ハッシュ テーブル、キー付きリスト、または連想配列として理解されます。 順序付けられた値のリスト。ほとんどの言語では、これは配列として理解されます。

PHPのシリアライズは変数をシリアライズして変数の型と構造を持った文字列式を返すことですが、どちらもデータ構造を文字列の形で表現していますが、両者の違いは何でしょうか?

JSON から始めて、簡単な例を見てみましょう。

手順1:

リーリー

表示結果:

リーリー 変数 test の

{"Name":"Peter","Age":20} は 2 つの要素を持つオブジェクトです (PHP の配列のような感じです): 名前はピーター、年齢は 20 です。

もちろん、さらに複雑になる可能性があります:

手順2:

リーリー

表示結果:

リーリー

この例では、User 要素に名前と年齢が含まれています。

複数のUserを反映したい場合は配列を使用する必要があります。オブジェクトの「{}」とは異なり、配列は「[]」を使用します。

手順3:

リーリー

表示結果:

リーリー

上記の簡単な例を通じて、いくつかの複雑なデータを文字列を介して転送できます。Ajax と組み合わせるとさらに便利になります。

PHP のシリアライズ関数の役割を見てみましょう。

手順4:

リーリー

表示結果:

リーリー

この結果は JSON よりも複雑に見えますが、実際にはいくつかのデータ型と構造を説明しています。

a:2:{s:7:"国";s:3:"アメリカ";s:3:"年齢";i:20;} を例として挙げます:

a:2 は 2 つの要素を持つ配列であることを示し、s:7:" Country";s:3:"USA"; は最初の要素であり、s:7 は 7 文字の文字列 (文字列) を持つことを示します。 、その後に続く i:20; も整数 (整数) 20 であると推測されます。

この例をもう一度見てください:

手順5:

リーリー

表示結果:

リーリー

この例からわかるように、シリアル化はデータの型と構造の両方を保存し、シリアル化解除後の変数は引き続き add() メソッドを使用できます。

では、PHP と JSON の間には何か関係があるのでしょうか? PHP に詳しい友人なら、PHP5.2.0 では JSON 拡張機能がデフォルトのコンポーネントとして設定されていることを知っているはずです。つまり、PHP で JSON 操作を実行でき、その関数は json_encode と json_decode です。 。

手順6:

リーリー

表示結果:

リーリー

この結果は例1のテスト値と同じです。 json_encode を使用してPHPの変数をJSON文字に変換し、式を出力します。

json_decodeの使い方を見てみましょう。

手順7:

リーリー

表示結果:

リーリー

これは、{"Name":"Peter","Age":20} が JSON のオブジェクトであることを確認しますが、json_decode で ASSOC パラメーターを True に設定することもできます。

手順8:

リーリー

表示結果:

リーリー

さらに、JSON は Unicode 形式に基づいているため、中国語での操作の場合は UTF-8 形式に変換する必要があることに注意してください。

上記の例を通して、JSON と PHP の Serialize と json_encode については予備的に理解できたと思います。PHP、JavaScript、JSON、Ajax を組み合わせることで、強力なデータ インタラクション関数を完成させることができます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/752486.html技術記事軽量のデータ交換形式である JSON (JavaScript Object Notation) については、誰もがよく知っているはずです。人間にとって読み書きしやすい。機械による解析と生成も簡単です。それは...
に基づいています
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート