2015-06-05 47 views
2

我有一個簡單foreach環路不同的值如下:PHP foreach循環 - 需要從文本所示

foreach ($d_38 as $value) { 
    echo " 
     <option value='".$value."'"; 
      if ($results["q".$i]==$value) echo 'selected="selected"';  
    echo">".$value."</option> 
"; 
} 

我目前擁有的存儲在數組中的信息被稱爲$d_38此信息被放置到的所述optionsforeach循環期間下降。

這一切工作正常。但是,我在$d_38_t中存儲了不同的語言,我想在顯示該選項的文本時顯示該代碼,在上面的代碼中是第三個$value變量。所以基本上,用戶可以看到一種語言的選項,但在這種情況下數據始終存儲在English中。

我不知道如何將這兩個陣列放在一起,以便我可以在foreach循環中使用它們 - 任何人都可以提供任何指導嗎?

+3

我覺得這是缺少[標籤:PHP],不是? - 而且,FWIW,這根本不是一個jQuery問題。 **編輯**好得多。 –

+0

我很尷尬......今天已經跟jQuery一起盤算了...因此它在我的大腦上......感謝Brad! –

+0

使用常規for循環遍歷一個數組和訪問兩個數組的內部數據(如果它們按照相同的方式排序)可能容易得多。 – HaukurHaf

回答

3

key加到foreach並用它作爲$d_38_t的關鍵。

foreach ($d_38 as $key => $value) { 
    echo "<option value='" . $value . "'"; 
     if ($results["q".$i] == $value) echo 'selected="selected"';  
    echo ">" . $d_38_t[$key] . "</option>"; 
} 
+0

可能更適合使用foreach。鍵可能不是數字,並且foreach將保留這種關係。 –

+0

完美@panther,非常感謝。 –

3

假設鍵是數字$d_38$d_38_t之間對齊,您可以使用for循環:

for ($i = 0; $i < count($d_38); $i++) 
{ 
    // ...snip... 
    echo ">" . $d_38_t[$i] . "</option>"; 
} 

要保持它,但千萬要注意:這只是與數字鍵的作用。 @panther有正確答案。 ;-)

+0

我已經向上帶箭頭布拉德,謝謝你的迴應! –