私はこれを行う場合は、次の異なる結果()PHP
$new_arr = array(
0 => 'keyboard',
1 => 'mouse',
2 => 'computer'
);
print_r(json_encode($new_arr));
出力:
[ "キーボード"、 "マウス"、 "コンピュータ"]
しかし、私のデータベースから "製品"テーブルのすべての行を取得し、私はこれを行うと言う:
$product_with_id_map = array();
foreach($query as $result) {
$product_with_id_map[$result->id] = $result->name;
}
print_r(json_encode($product_with_id_map));
出力:
{ "0": "キーボード"、 "1": "マウス"、 "2": "コンピュータ"} Iは実際の鍵を保持する必要
配列私はjson_encodeまた、第1の例では、2番目の出力を達成する方法を教えてくれますか?
ちょうど私はあなたの質問を正しく受け取ります:第2の出力形式は希望ですか? – vzwick
はい、正確に私のjson_encodeに配列キーを保持したい –
* "本当にjson_encodeのときに配列のキーを保持する必要があります。"両方の例でキーは同じです。しかし、最初の配列は配列であり、もう1つは完全に数字で構成されるプロパティキーを持つオブジェクトです。このJSONをデコードする言語がJavaScriptなら、それは非常に微妙な違いです(配列キーはJavaScriptの文字列です - [はい、実際](http://blog.niftysnippets.org/2011/01/myth-of-arrays)。 html))。他の言語は異なる場合があります。 –