在php中,如果存在或不存在深度未知的复杂多维平移数组,如何在精确子数组中添加数组
这是我的问题。我有一个复杂的多维数组,深度不同。我在Stackoverflow上尝试的一切都失败了。我试过使用array\u push、array\u merge、array\u combined、foreach等。我的代码是BS 您可以找到阵列(其中的一部分(有15k条记录) 我的目标是找到最后一个数组并添加一个额外的数组 我在多维数组中寻找的数组是:在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
[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数组是否有子数组,
如果没有,则跳过它(存在数据)
否则
循环阵列
如果订单数组存在=是,则跳过它(数据存在)
否则
添加无数据的数组顺序
我不知道如何到达要检查、添加或跳过的最后一个数组。有什么可以帮我的吗?有什么可以帮我的吗?