2012-06-13 53 views
2

在PHP中使用for循環可以將數字與變量名稱關聯嗎?使用for循環php的打印名稱

例如:

$name1="hi"; 
$name2="khj"; 

for($i=0;$i<=2;$i++) 
{ 
echo .. 
} 

我們如何可以打印$ NAME1和使用循環$ NAME2?

謝謝!

回答

5

是的,這叫做variable interpolation

$name1="hi"; 
$name2="khj"; 

for($i=1;$i<=2;$i++) { 
    $var = 'name' . $i; 
    echo $$var; 
} 

注:有在PHP變量插值多個語法。另外,我修改了你的循環從1開始。

5
for($i = 1; $i <= 2; $i++) 
    { 
     echo $name{$i}; 
    } 

這將是比較容易的方式把它放在一個陣列,雖然,這就是我們有他們。

$names = array(); 
    $names[1] = 'A'; 
    $names[2] = 'B'; 

    foreach($names as $name) 
    { 
     echo $name; 
    } 
+1

+1爲附加陣列的例子。 –

+1

你的變量語法錯誤太糟糕了。 – deceze

+0

這是不熟悉的,理所當然的。 ;) – Sherlock

0

本刊NAME 1和NAME。而我值必須是從1開始

 for($i=1;$i<=2;$i++) 
     { 
     echo ${'name'.$i}."<br>"; 
     } 
+0

這不是用戶所要求的。 –

+0

不要這樣想。自己測試一下。正如你所說的,你的輸出是'name1'和'name2'。 –

+0

如果你的答案與其他人「匹配」,爲什麼還要寫一個新的答案。只要提出一個你認爲是最好的答案。 –

3

把這個for循環:

echo ${'name'.$i}."\n"; 
2

最好使用類似: -

$names[] = $name1; 
$names[] = $name2; 

foreach($names as $name){ 
    echo $name; 
}