合并多个数组并使用foreach

时间:2016-06-29 20:58:35

标签: php arrays foreach

我有3个数组,想要将它们合并在一起 所以我可以在一个foreach中使用它

<?php 
print_r($zaza_optionsbase['header-icon-title']);
print_r($zaza_optionsbase['header-icon']);
print_r($zaza_optionsbase['header-icon-link']);
?> 


ARRAY ( [0] => FIRST TITLE [1] => SECOND TITLE [2] => THIRTH TITLE )
ARRAY ( [0] => FA FA-HEART [1] => FA FA-POWER-OFF [2] => FA FA-TH )
ARRAY ( [0] => LINK1 [1] => LINK2 [2] => LINK3 )



像下面的东西..但我不能让它工作

<?php 
$newArray = array($zaza_optionsbase['header-icon-title'], $zaza_optionsbase['header-icon'], $zaza_optionsbase['header-icon-link']);

foreach ($newArray as $item)
{
    echo '<a href="'.$item['header-icon-title'].'"><i class="'.$item['header-icon-icon'].'"></i>'.$item['header-icon-link'].'</a>';
}
?>

先进的Thanx

必须输出:

    echo '<a href="'.$item['header-icon-title[1]'].'"><i class="'.$item['header-icon-icon[1]'].'"></i>'.$item['header-icon-link[1]'].'</a>';
    echo '<a href="'.$item['header-icon-title[2]'].'"><i class="'.$item['header-icon-icon[2]'].'"></i>'.$item['header-icon-link[2]'].'</a>';
    echo '<a href="'.$item['header-icon-title[3]'].'"><i class="'.$item['header-icon-icon[3]'].'"></i>'.$item['header-icon-link[3]'].'</a>';

1 个答案:

答案 0 :(得分:1)

您可以将所有数组传递到array_map,而不是使用foreach

array_map(function($title, $icon, $link) {
    echo '<a href="'.$title.'"><i class="'.$icon.'"></i>'.$link.'</a>';
}
, $zaza_optionsbase['header-icon-title']
, $zaza_optionsbase['header-icon']
, $zaza_optionsbase['header-icon-link']);