次のコマンドを使用して、スパース php 配列 (またはマップ) を作成できます。
$myarray = array(10=>'hi','test20'=>'howdy');
これをJSONとしてシリアライズ/デシリアライズしたい。次のコマンドを使用してシリアル化できます。
$json = json_encode($myarray);
結果は string になります{"10":"hi","test20":"howdy"}。ただし、これを逆シリアル化し、次のコマンドを使用して配列にキャストすると:
$mynewarray = (array)json_decode($json);
有効なphp識別子ではないキーとのマッピングが失われたようです。つまり、mynewarrayマッピングはありますが、 nor'test20'=>'howdy'はありません。10=>'hi''10'=>'hi'
json_encode標準/json_decode関数を使用してjsonとの間で変換するときに、phpマップに数値キーを保持する方法はありますか?
(PHP バージョン 5.2.10-2ubuntu6.4 を使用しています。)