jsonの問題に関して、初心者の友人が次々に私のところに来て、たとえば、なぜ{"1":"item1","2を出力するのかと尋ねてきました。 ["item1","item2","item3"] の代わりに ":"item2" ,"3":"item3"} を使用します。
php配列とjs配列
ここでは PHP 5.4 以降の構文を使用します。
PHP には連想配列とインデックス配列があります。例:
js にはインデックス配列という 1 種類の配列しかありません。おそらく、K/V キーと値のペアを使用して連想配列をシミュレートできると言うでしょう。
K/V キーと値のペアはそれと似ていますが、配列の特性がないため、ここでは詳しく説明しません。
上記のphp配列をjson_encodingした後に得られるjson形式は、それぞれ ["item1", "item2", "item3"] と {"name":"u5f20u4e09","age":"22"} です。ここでの中国語は Unicode に変換されています。中国語を表示したい場合は、PHP 5.4 以降で json_encode($arr, JSON_UNESCAPED_UNICODE) を取得できます。 " } しかし、このように書くことはあまりお勧めできません。
ここで得られるのはjs上の配列形式のjson文字列とオブジェクト形式ですが、なぜこの2種類が生成されるのか、言い換えれば、どのような状況でオブジェクト形式が生成され、どのような状況で配列形式が生成されるのかということです。
php配列出力形式制御
一般的な状況をリストしました。コードを見てください。
リーリー実際、最初のタイプは、多くの初心者の友人がよく遭遇する問題です。
データベースが読み出された後、ID をインデックスとして使用したいため、データベースの ID は 0 から始まりません。この例を見てください。
リーリー 最後の方法は、カスタム フィールドと配列を一緒に使用して、先ほどの例を変更する、より一般的に使用される記述方法です。
php json 形式の制御について学習する皆さんにとって、この記事が役立つことを願っています。いつもBangkejiaウェブサイトをご愛顧いただき誠にありがとうございます。