1

我有 3 个数组:

$item_name = array( 'Apples', 'Oranges' );
$item_price = array( '29', '39' );
$item_quantity = array( '5', '10' );

我需要做的是将每个数组的第一个和第二个索引中的每个项目放入它自己的数组中(我希望这是有道理的),这是我想要实现的一个示例:

$my_array1 = array( 'Apples', '29', '5' );
$my_array2 = array( 'Oranges', '39', '10' );

请注意,每个数组中可能有更多项,但每个数组将具有相同数量的项。

我很困惑,是否有一些厚颜无耻的 PHP 数组函数,我们可以以某种奇怪的方式使用它来实现这一点?

感谢您的回答。

4

3 回答 3

2

我认为这可能有效。所有数组都需要具有相同的长度

$item_name = array( 'Apples', 'Oranges' );
$item_price = array( '29', '39' );
$item_quantity = array( '5', '10' );

$my_arrays = array();

foreach($item_name as $index=>$name){
   $my_arrays[$index] = array($item_name[$index], $item_price[$index], $item_quantity[$index]);
}

您将拥有一个数组my_arrays数组。这些数组包含您需要的信息。

$my_arrays[0]: ['Apples', '29', '5']
$my_arrays[1]: ['Oranges', '39', '10']
于 2017-05-12T09:15:43.003 回答
2

您可以在组合数组live demo上使用 array_column 。

array_column([$item_name, $item_price, $item_quality], 0);
于 2017-05-12T09:23:10.590 回答
0
<?php
$item_name = array( 'Apples', 'Oranges' );
$item_price = array( '29', '39' );
$item_quantity = array( '5', '10' );

$my_arrays = array();
for($i=0; $i<count($item_name);$i++){
$my_arrays[$i][0]=$item_name[$i];
$my_arrays[$i][1]=$item_price[$i];
$my_arrays[$i][2]=$item_quantity[$i];
}
echo "<pre>";
print_r($my_arrays);
echo "</pre>";
?>
于 2017-05-12T09:39:19.527 回答