在php中,如果存在或不存在深度未知的复杂多维平移数组,如何在精确子数组中添加数组

在php中,如果存在或不存在深度未知的复杂多维平移数组,如何在精确子数组中添加数组,php,arrays,multidimensional-array,sub-array,Php,Arrays,Multidimensional Array,Sub Array,这是我的问题。我有一个复杂的多维数组,深度不同。我在Stackoverflow上尝试的一切都失败了。我试过使用array\u push、array\u merge、array\u combined、foreach等。我的代码是BS 您可以找到阵列(其中的一部分(有15k条记录) 我的目标是找到最后一个数组并添加一个额外的数组 我在多维数组中寻找的数组是: [Branch] => Array ( [Branchno] => 000

这是我的问题。我有一个复杂的多维数组,深度不同。我在Stackoverflow上尝试的一切都失败了。我试过使用array\u push、array\u merge、array\u combined、foreach等。我的代码是BS

您可以找到阵列(其中的一部分(有15k条记录)

我的目标是找到最后一个数组并添加一个额外的数组

我在多维数组中寻找的数组是:

[Branch] => Array
           (
           [Branchno] => 000
           [Stockqty] => 1
           [Saleprice] => 119.95
           [Xprice] => 0
           [Qprice] => 54.85
           [NOS] => 0
           )
当我找到这个数组时,我需要添加这个没有值的数组:

[Order] => Array
           (
           [Deliverydate] =>
           [Orderqty] =>
           )
在此之后,阵列应如下所示:

[Branch] => Array
           (
           [Branchno] => 000
           [Stockqty] => 1
           [Saleprice] => 119.95
           [Xprice] => 0
           [Qprice] => 54.85
           [NOS] => 0
           [Order] => Array
                      (
                      [Deliverydate] =>
                      [Orderqty] =>
                      )
           )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] => 20060911
                                   [Orderqty] => 8
                                   )
                        )

             )
问题是:在该阵列中,我可以有如下子阵列:

[Branch] => Array
           (
           [Branchno] => 000
           [Stockqty] => 1
           [Saleprice] => 119.95
           [Xprice] => 0
           [Qprice] => 54.85
           [NOS] => 0
           [Order] => Array
                      (
                      [Deliverydate] =>
                      [Orderqty] =>
                      )
           )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] => 20060911
                                   [Orderqty] => 8
                                   )
                        )

             )
我需要将相同的数组添加到这些数组中。因此,数组应该如下所示:

[Branch] => Array
           (
           [Branchno] => 000
           [Stockqty] => 1
           [Saleprice] => 119.95
           [Xprice] => 0
           [Qprice] => 54.85
           [NOS] => 0
           [Order] => Array
                      (
                      [Deliverydate] =>
                      [Orderqty] =>
                      )
           )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] => 20060911
                                   [Orderqty] => 8
                                   )
                        )

             )
额外的问题是,这些数组中的一些可能包含我想要添加的数组,以及填充的数据,我需要跳过它。如下所示:

[Branch] => Array
           (
           [Branchno] => 000
           [Stockqty] => 1
           [Saleprice] => 119.95
           [Xprice] => 0
           [Qprice] => 54.85
           [NOS] => 0
           [Order] => Array
                      (
                      [Deliverydate] => 20060911
                      [Orderqty] => 8
                      )
           )
或者像这样:

[Branch] => Array
           (
           [Branchno] => 000
           [Stockqty] => 1
           [Saleprice] => 119.95
           [Xprice] => 0
           [Qprice] => 54.85
           [NOS] => 0
           [Order] => Array
                      (
                      [Deliverydate] =>
                      [Orderqty] =>
                      )
           )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] =>
                                   [Orderqty] =>
                                   )
                        )

             )
[Branch] => Array
            (
                 [0] => Array
                        (
                        [Branchno] => 000
                        [Stockqty] => -4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        )

                 [1] => Array
                        (
                        [Branchno] => 001
                        [Stockqty] => 4
                        [Saleprice] => 119.95
                        [Xprice] => 0
                        [Qprice] => 54.85
                        [NOS] => 0
                        [Order] => Array
                                   (
                                   [Deliverydate] => 20060911
                                   [Orderqty] => 8
                                   )
                        )

             )
基本上,(伪代码)我需要检查每个子数组(不知道有多深),检查顺序数组是否存在(在[NOS]之后)

如果数组顺序存在=否, 添加没有数据的数组

如果数组顺序存在=是, 看看Order数组是否有子数组, 如果没有,则跳过它(存在数据)

否则

循环阵列 如果订单数组存在=是,则跳过它(数据存在)

否则

添加无数据的数组顺序


我不知道如何到达要检查、添加或跳过的最后一个数组。

有什么可以帮我的吗?有什么可以帮我的吗?