迭代foreach循环中的第二个数组

时间:2014-10-12 11:49:06

标签: php arrays

我有一个平面数组用于稍后生成树:

[0] => array
    [0] => 1
    [1] => 3
[1] => array
    [0] => 3
    [1] => 5
[2] => array
    [0] => 8
    [1] => 12
[3] => array
    [0] => 4
    [1] => 7

此数组中的值是普通ID,我想将它们转换为全名。我可以从数据库中获取这些名称,并带有相应的id,因此这是我的示例输出数组:

[0] => array
    ['id'] => 1
    ['name'] => 'sample name'
[1] => array
    ['id'] => 2
    ['name'] => 'foo'
[2] => array
    ['id'] => 3
    ['name'] => 'bar'

所以现在我必须遍历第一个数组,并将每个值与第二个数组中的值进行比较......如果不在外部循环的每次迭代中使用foreach循环,我怎么能这样做呢?

谢谢!

1 个答案:

答案 0 :(得分:1)

重建第二个数组,以便在第一个数组中引用它。

$newarr = array();
foreach ($secondval as $val )
{
    $newarr[ $val->id ] = $val->name;
}

然后在第一个循环中使用它。