2016-06-29 6 views
-1

私は3つの配列を持ち、それらを一緒にマージしたいと思います。
だから、私は1つのforeach複数の配列をマージして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>'; 
} 
?> 

ありがとうを動作させることはできません必要があります出力:

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>'; 
+0

あなたは '+'配列ができるので、 'foreach($ arr1 + $ arr2 + $ arr3 as $ foo)'がうまくいくかもしれません。 –

+0

期待される出力は正確には何でしょうか? – Rizier123

+0

3つのアレイを同時にループしたいですか? – Rizier123

答えて

1

foreachではなく、すべての配列をarray_mapに渡すことができます。

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']); 
+0

これは完璧に機能しました!... Thanx – Nasco

関連する問題