php - 移动多维数组的元素

标签 php arrays multidimensional-array

我正在从数据库接收一个数组 - 我无法控制发送哪些数据以及以什么顺序发送。这是目前的样子:

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
                )

        )

)

在实际操作中,“无酱”选项之前可以有任意数量的元素(当前位于索引 3,但并不总是这样。)客户希望奶酪和酱项目始终位于“无酱”选项的末尾。列表并按以下方式排序:普通奶酪、无奶酪、普通酱汁、无酱汁。

再次请记住,我无法控制数组的初始创建方式,并且相关元素之前和之间可能存在任意数量的其他元素,我该如何实现这种情况呢?另外需要担心的是,在某些时候,他们可能希望在重新排序中包含其他选项(例如,他们可能会添加“额外奶酪”和“额外酱汁”的选项,并希望它们处于特定位置,例如好吧。)

添加了 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',
    ),
  ),
)

最佳答案

您可以尝试使用usort ,这将允许用户定义的排序。

关于php - 移动多维数组的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13274413/

相关文章:

javascript - 通过javascript中的对象数组进行映射

arrays - 如何在 Python 3 中计算嵌套列表中的特定邻居

objective-c - Objective-C 中的矩阵

php - 确定使用 PHP 调用函数的位置

php - mysql无限主键自增

arrays - PostgreSQL 聚合 json 数组

java - 二维数组未在网格中打印/不是完整数组?

java - 3d数组处理JSP页面时发生异常

php - 转换 MAC 地址格式

php - 删除样式和脚本标签