2

我对 PHP 相当陌生,并且正在努力通过它。我已经设法独立解决了大多数问题,但是这个问题让我困惑了一段时间。任何帮助深表感谢!

我有一个表格产生的一系列数组,如下:

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

我想去的地方是:

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

可能是我在逻辑上比实际代码更苦恼。我已经尝试了各种使用foreach和 while 循环的操作,但收效甚微。

任何想法都感激不尽。

谢谢亚伦

4

4 回答 4

3

如果保证阵列的大小是平衡的,那么您可以这样做。

$res = array();
for($x=0; $x<count($description_array); $x++){
       $res[] = array($description_array[$x], $account_array[$x]);
}
于 2013-06-13T20:47:13.923 回答
1

您可以使用keyfrom 1 数组来获取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>';
于 2013-06-13T20:47:07.917 回答
0

德普。我完全看错了。在我修复它的时间里,其他人回答了,但是哦,好吧。这里是 :)

$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.
    }
}
于 2013-06-13T20:45:50.950 回答
0

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

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

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

于 2013-06-13T20:48:12.457 回答