2010-07-02 163 views
0

我有一個數組這樣的:PHP陣列操縱

[0] => Array 
    (
     [slideritem] => 592 
     [sliderbig] => 644 
    ) 

[1] => Array 
    (
     [slideritem] => 593 
     [sliderbig] => 645 
    ) 

[2] => Array 
    (
     [slideritem] => 594 
     [sliderbig] => 646 
    ) 

slideritem是將要顯示的圖像的ID和slidebig是將被鏈接上的收藏夾將被顯示的圖像。

換句話說,我想要標記是:

<a href="[sliderbig]"><img src="[slideritem]" /></a> 

我敢肯定這是一個簡單的foreach語句,但我已經對我的12小時直屏幕:)

+0

你有什麼問題嗎? – 2010-07-02 21:20:54

+0

正在尋找將創建標記的foreach語句。 – tsiger 2010-07-02 21:21:38

+4

如果可以的話,休息一下(也許小睡一下),明天再回來。除了廚師,你已經準備好了所有的食材。 – salathe 2010-07-02 21:23:50

回答

0

前像這樣?

foreach($theArray as $slider) { 
    printf('<a href="%d.png"><img src="%d.png" alt="sliderimage"/></a>', 
      $slider['sliderbig'], 
      $slider['slideritem']); 
} 

休息一下!

+0

你的意思是'printf()'? – 2010-07-02 21:22:15

+0

謝謝@Bill!當然。 – Gordon 2010-07-02 21:24:05

+1

yeap。那會做。嘿,太棒了。有一個很好的週末ppl和thx :) – tsiger 2010-07-02 21:34:42

1
foreach($array as $item) { 
    echo "<a href="{$item->sliderbig}"><img src="{$item->slideritem}" /></a>"; 
} 
+0

如果你想使用{notation},你需要轉義內部引號,但它也會引發「試圖獲取非對象的屬性」,因爲$ item是一個數組。 – Gordon 2010-07-02 21:34:00

0
function test($accum, $a) { 
    return $accum . sprintf('<a href="url/to/%s">' . 
     '<img src="url/to/%s" /></a>'."\n", 
     htmlspecialchars($a['sliderbig']), 
     htmlspecialchars($a['sliderbigitem'])); 
} 

$output = array_reduce($array, 'test', '');