Переменные PHP – имя переменной объединения

У меня есть PHP for loop:

for ($counter=0,$counter<=67,$counter++){ echo $counter; $check="some value"; } 

то, что я пытаюсь сделать, это использовать переменную цикла for и добавить ее к имени другой переменной.

Bascially, я хочу, чтобы выход PHP был следующим для каждой строки

 1 $check1="some value" 2 $check2="some value" 3 $check3="some value" 4 $check4="some value" etc etc 

Как я могу добиться этого? я пропущу что-то очевидное?

Я пробовал $check.$counter="some value" но это не удается.

любой совет?

Как всегда,

Правильный синтаксис переменных переменных :

 ${"check" . $counter} = "some value"; 

Однако я очень отговариваю это. То, что вы пытаетесь выполнить, скорее всего, будет более элегантно решено с помощью массивов . Пример использования:

 // Setting values $check = array(); for ($counter = 0; $counter <= 67; $counter++){ echo $counter; $check[] = "some value"; } // Iterating through the values foreach($check as $value) { echo $value; } 

Это можно использовать в некоторых случаях. Например, если ваше приложение имеет что-то вроде двух языковых записей в БД.

 echo $this->{'article_title_'.$language}; 

Это гораздо удобнее, чем, например, это;

 if($language == 'mylanguage1') echo $this->article_title_mylanguage1; else echo $this->article_title_mylanguage2; 

Очевидно, это то, что вам не нужно делать в вашем многоязычном приложении, но я видел такие случаи.

Вы должны использовать синтаксис $ {'varname'}:

 for ($counter=0,$counter<=67,$counter++){ echo $counter; ${'check' . $counter} ="some value"; } 

это будет работать, но почему бы просто не использовать массив?

 $check[$counter] = "some value"; 

Массив выполнит это.

 $check = array(); for($counter = 0; $counter <= 67; $counter++) { $check[] = "some value"; var_dump($check[$counter]); }