我正在从数据库接收一个数组 - 我无法控制发送哪些数据以及以什么顺序发送。这是它目前的样子:
Array
(
[itemCode] => Array
(
[0] => Array
(
[code] => P
[descShort] => Pepperoni
)
[1] => Array
(
[code] => G
[descShort] => Green Peppers
)
[2] => Array
(
[code] => n
[descShort] => No Sauce
)
[3] => Array
(
[code] => x
[descShort] => No Cheese
)
[4] => Array
(
[code] =>
[descShort] => Regular Cheese
)
[5] => Array
(
[code] =>
[descShort] => Regular Sauce
)
)
)
在实际实践中,在 No Sauce 选项之前可以有任意数量的元素(目前在索引 3,但并不总是这样。)客户想要的是 Cheese 和 Sauce 项目始终位于列表的末尾,并且以这种方式订购:普通奶酪,无奶酪,普通酱汁,无酱汁。
同样,请记住,我无法控制最初创建数组的方式,并且在相关元素之前和之间可能存在任意数量的其他元素,我该如何实现呢?其他需要担心的是,在某些时候,他们可能希望在此重新排序中包含其他选项(例如,他们可能会添加额外奶酪和额外酱汁的选项,并希望它们处于特定位置好。)
添加了 var_export
array (
'itemCode' =>
array (
0 =>
array (
'code' => 'P',
'descShort' => 'Pepperoni',
),
1 =>
array (
'code' => 'G',
'descShort' => 'Green Peppers',
),
2 =>
array (
'code' => 'n',
'descShort' => 'No Sauce',
),
3 =>
array (
'code' => 'x',
'descShort' => 'No Cheese',
),
4 =>
array (
'code' => '',
'descShort' => 'Regular Cheese',
),
5 =>
array (
'code' => '',
'descShort' => 'Regular Sauce',
),
),
)