【发布时间】:2014-01-21 15:28:37
【问题描述】:
我有一个多维数组,在 PHP 中:
Array
(
[1] => Array
(
[19] => Array
(
[type] => 2
)
[6] => Array
(
[type] => 4
)
[12] => Array
(
[type] => 3
)
)
)
当我通过以下方式在 javascript 中对这个数组进行 json_encode:
var jsonArray = <?php echo json_encode($above_array); ?>;
我明白了:
Object
(
[1] => Object
(
[6] => Object
(
[type] => 2
)
[12] => Object
(
[type] => 4
)
[19] => Object
(
[type] => 3
)
)
)
我想通过 id 保留第一个订单而不是第二个订单。
【问题讨论】:
-
我如何保留第一个订单?
-
使用其他东西作为键(例如key_1,key_2,key3),这样你就可以在解码json后进行排序
-
JSON 对象是无序的键值映射。 数组 是有序列表。任你选,Javascript/JSON 没有 ordered 映射。
-
如果你想保留顺序,你需要一个数组,而不是一个对象。您需要生成一个如下所示的结构:
[[19, {type: 2}], [9, { type: 2}], [6, {type: 4}], [12, {type: 3}]],即一个数组数组,其中每个嵌套数组包含两个元素,“索引”和type对象。
标签: javascript php json