2011-06-09 90 views
1

我想創造的財產以後像100 VAR的,他們的名字將是:建立VAR與他人

$numbr_1 = 1; 
$numbe_2 = 2; 
$number_3 = 3; 
... 

我不會寫100個瓦爾當然的,但有一種方法與福爾環或做財產以後?我想這個問題:

for ($i = 1; $i <= 100; $i++) 
$number_{$i} = $i; 
+2

我會這麼說,因爲我的朋友,我不希望你要處理的是什麼,你的後果」重試:當你可以創建一個包含多個值的單個數組時,不要創建數百個含糊不清的命名變量。 – 65Fbef05 2011-06-09 21:28:08

+0

這只是一個有趣的問題,我不會使用它,但我只是想要如何去做。謝謝。 – Luis 2011-06-09 21:32:18

+0

在這種情況下,請按照@Marc B關於'變量變量'的鏈接來完整地瞭解它們的工作方式。 – 65Fbef05 2011-06-09 21:36:43

回答

4

你說的是variable variables,它們是令人難以置信的愚蠢使用。首先,他們使調試幾乎不可能。

你想要的是一個數組:

for ($i = 1; $i <= 100; $i++) { 
    $numbers[$i] = $i; 
} 
+0

謝謝。編輯:順便說一下,它只是一個問題,我不會使用它(變量變量),只知道如何去做。 – Luis 2011-06-09 21:32:59

+0

變量變量有時需要廉價的反射,但在這種情況下,我猜不是。 – 2011-06-09 21:37:10

2

像這樣的東西應該工作:

for($i = 1 ; $i <= 100 ; $i++){ 
    $var_name = "number_$i"; 
    $$var_name = $i; 
} 
1

你爲什麼不使用數組?

$number = array(); 
for ($i = 0; $i < 100; $i++) 
{ 
    $number[] = $i; 
} 
2
for($i=1;$i<=100;$i++) { 
    $j="number$i"; 
    $$j = $i; 
} 
+0

-1。這是PHP中的一個扁平語法錯誤。 – 2011-06-09 21:26:27

+0

@馬克乙:對不起,我修好了。 – 2011-06-09 21:27:43

0

可能的解決方法是陣列的使用。

$number = array(); 
for ($i = 1; $i <= 100; $i++) { 
    $number[$i] = $i; 
} 
1
 for($i = 1 ; $i <= 100 ; $i++){ 
      ${'number_'.$i} = $i; 
     }