json の問題に関して、初心者の友人が次々と私のところに来て、たとえば、[item1,item2,item3] ではなく {1:item1,2:item2,3:item3} を出力するのはなぜなのかと尋ねてきました。ここでは、PHP 配列と JS 配列は、PHP 5.4 の上記の構文を使用して表されます。 PHP には連想配列とインデックス配列があります。例: ?php // インデックス配列 $arr = [ item1
json の問題に関して、初心者の友人が次々と私のところに来て、例えばなぜ{"1":"item1","2":"item2","3":"item3"}
而不是 ["item1","item2","item3"]
を出力するのかなどを尋ねてきました。
ここでは PHP 5.4 以降の構文を使用します。
PHP には連想配列とインデックス配列があります。例:
リーリー js にはインデックス配列という 1 種類の配列しかありません。おそらく、K/V キーと値のペアを使用して連想配列をシミュレートできると言うでしょう。
K/V キーと値のペアはこれに似ていますが、配列プロパティがないため、ここでは詳しく説明しません。
上記の php 配列 json_encode
后得到的 json 格式分别是 ["item1","item2","item3"]
和 {"name":"u5f20u4e09","age":"22"}
。这里的中文被转为 Unicode 了,如果你非要显示中文,php 5.4 之后支持 JSON_UNESCAPED_UNICODE
参数,json_encode($arr, JSON_UNESCAPED_UNICODE)
即可得到 {"name":"张三","age":"22"}
ですが、この方法で記述することはあまりお勧めできません。
ここで得られるのは、js の array 形式と object 形式の json 文字列です。では、なぜこれら 2 つのタイプが生成されるのか、つまり、オブジェクト形式がどのような状況で生成されるのか、またどのような状況で生成されるのかを説明します。配列形式が生成されます。
一般的な状況をリストしました。コードを見てください。
リーリー実際、最初のタイプは、多くの初心者の友人がよく遭遇する問題です。
データベースが読み出された後、ID をインデックスとして使用したいため、データベースの ID は 0 から始まりません。この例を見てください。
最後の方法は、カスタム フィールドと配列を一緒に使用して、先ほどの例を変更する、より一般的に使用される記述方法です。
リーリーOK、phper を始めたばかりの人にとって役立つことを願っています。