更好的 php array_merge
我正在寻找一种更好的方法,而不需要对 $justPrices[$i]
的整数进行硬编码:
$pricesResult = array_merge($justPrices[0], $justPrices[1], $justPrices[2], $justPrices[3]);
$justPrices
是一个多维数组,包含 4 个“bands”每个数组中的价格。例如,$justPrices
的数据如下:
Array ( [0] => Array ( [0] => 40.95 [1] => 39.95 [2] => 39.45 [3] => 38.95 ) [1] => Array ( [0] => 45.80 [1] => 41.80 [2] => 41.50 [3] => 41.40 ) [2] => Array ( [0] => 45.95 [1] => 42.95 [2] => 41.95 [3] => 41.45 ) [3] => Array ( [0] => 50.00 [1] => 50.00 [2] => 50.00 [3] => 50.00 ) )
问题是 $justPrices
中的数组数量至少会在 2 到 10+ 之间变化。因此,我需要一种方法让 array_merge()
函数的参数根据 $justPrices
中的数组数量而变化。我打算使用这个简单的方法来获取 $justPrices
中的数组数量:
$justPricesMax = count($justPrices);
我可以编写一个 for 循环
,而且我仍然可以,我只是想知道是否有一个更好的方法,表面上看起来相对简单!
I am looking to do this a better way without the need to hardcode the integers for $justPrices[$i]
:
$pricesResult = array_merge($justPrices[0], $justPrices[1], $justPrices[2], $justPrices[3]);
$justPrices
is a multidimensional array, containing 4 'bands' of prices within each array. The data for $justPrices
being for example:
Array ( [0] => Array ( [0] => 40.95 [1] => 39.95 [2] => 39.45 [3] => 38.95 ) [1] => Array ( [0] => 45.80 [1] => 41.80 [2] => 41.50 [3] => 41.40 ) [2] => Array ( [0] => 45.95 [1] => 42.95 [2] => 41.95 [3] => 41.45 ) [3] => Array ( [0] => 50.00 [1] => 50.00 [2] => 50.00 [3] => 50.00 ) )
The issue is that the amount of arrays within $justPrices
will vary from at least 2 to 10+. So I need a way for the parameters for the array_merge()
function to vary dependent on the amount of arrays within $justPrices
. I was going to use this simple method to get the amount of arrays within $justPrices
:
$justPricesMax = count($justPrices);
I could write a for loop
, and I might still, I just wondered if there was a better method for what seems on the surface relatively simple!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果你只是想展平数组,可以使用
call_user_func_array
来调用array_merge
以$justPrices
的元素作为参数:这相当于函数调用:
If you just want to flatten the array, you can use
call_user_func_array
to callarray_merge
with the elements of$justPrices
as parameters:This is equivalent to a the function call: