2011-08-26 59 views
1

我在學習,而且我一直堅持這麼久,現在有一些我認爲太簡單的事情,對不起,如果我是對的。 請幫我發展,我的問題是:當在for循環中回顯名稱時獲取變量值

我從一個表單來:

$text1 = $_POST['TEXT1']; 
    $text2 = $_POST['TEXT2']; 
    $text3 = $_POST['TEXT3']; 

現在我做:

for ($n = 1; $n <= 3; $n++) { 
echo "Number " .$n. " is: " .$text.$n; 
} 

這是印刷:

1號是:1

2號是:2

數3:3

當我需要的是:

1號是:包含值在$ text1的

2號是:包含在$文本2

3號值是:$ text3中包含的值

如何才能實現我所需要的?

非常感謝

回答

0

你可以把你的值到一個數組:

$texts = array($_POST['TEXT1'], $_POST['TEXT2'], $_POST['TEXT3']); 

for ($n = 0; $n < count($texts); $n++) { 
    echo "Number " . ($n+1) . " is: " . $texts[$n]; 
} 
+0

非常感謝,數組! – user712027

+0

不客氣!如果它對你有幫助,請選擇正確的答案。 :) – Jules

1
for ($n = 1; $n <= 3; $n++) { 
$var = "text".$n; 
echo "Number " .$n. " is: " .$$var; 
} 

,但如果保存在數組中的POST數據還要好

可以像這樣做:

$text = array(); 
$text[] = $_POST["TEXT1"]; 
$text[] = $_POST["TEXT2"]; 
$text[] = $_POST["TEXT3"]; 

那麼你可以做這樣的:

for ($n = 1; $n <= count($text); $n++) { 
echo "Number " .$n. " is: " .$text[$n-1]; 
} 
+1

另請參見:http://php.net/manual/en/language.variables.variable.php 爲什麼在發送表單後將$ _POST-vars存儲到數組中?更好地使用表單字段名稱,這會產生數組,例如'' – feeela

1

使用此:

for ($n = 1; $n <= 3; $n++) { 
    echo "Number " .$n. " is: " . ${'text'.$n}; 
}