PHP将多个数组中的数组值操作为单个数组

时间:2013-06-13 20:43:39

标签: php arrays

我是PHP的新手并且正在努力完成它。我已经设法独立地解决了大多数问题,但是这个问题让我陷入了一段时间。非常感谢任何帮助!

我有一个由表单生成的一系列数组,如下所示:

description_array = description1, description2, description3
account_array = account1, account2, account 3

我想去的地方是:

item_array = 1 => description1, account1, 2 => description2, account2

可能我正在努力学习逻辑而不是实际的代码。我已尝试使用foreach和while循环进行各种操作,但收效甚微。

感激地收到任何想法。

由于 亚伦

4 个答案:

答案 0 :(得分:3)

如果阵列保证平衡,你可以这样做。

$res = array();
for($x=0; $x<count($description_array); $x++){
       $res[] = array($description_array[$x], $account_array[$x]);
}

答案 1 :(得分:1)

您可以使用1个数组中的key来获取另一个数组的value

$description_array = array('description1', 'description2', 'description3');
$account_array = array('account1', 'account2', 'account3');

$item_array = array();
foreach($description_array as $key=>$val){
    $item_array[] = array($val,$account_array[$key]);
}

echo '<pre>',print_r($item_array),'</pre>';

答案 2 :(得分:0)

DERP。我完全误读了。在我修复它的时候,其他人回答了,但是哦。这是:)

$items = array();
foreach($description AS $k=>$v){
    if(isset($account[$k])){ 
        $items[$k] = array($v, $account[$k]); // assuming you don't really want a comma sep string, but another array.
    }
}

答案 3 :(得分:0)

如果它们都同样大,那么迭代其中一个数组并填充新数组可能是最简单的。

$item_array = array();
foreach ($description_array as $key => $description) {
    $item_array[$key] = array(
        'description' => $description,
        'account' => $account_array[$key]
    );
}

如果添加更多数组,这也很容易扩展。