#php #variables #for-loop
#php #переменные #for-цикл
Вопрос:
Можно ли добавить или объединить что-то в имя переменной в переменной PHP? Например:
for($g = 7; $g <= 10; $g ){
for($i = 0; $i <= 4; $i ){
$counter = $g - 7;
if($i != $counter){
continue;
} else {
$grade.[$g] = $grades[$i];
}
}
}
Я хочу, чтобы это произошло:
$grade7 = 0
$grade8 = 1
$grade9 = 2
$grade10 = 3
Комментарии:
1. Для таких целей используйте массивы
2.
$$
ваш ответ
Ответ №1:
Объединяет $g
с grade
и делает это значение переменной, добавляя $
знак в начальной строке…
Приведенный ниже пример:
for($g = 7; $g <= 10; $g ){
for($i = 0; $i <= 4; $i ){
$counter = $g - 7;
if($i != $counter){
continue;
} else {
${"grade".$g} = $grades[$i];
}
}
}
echo $grade7; // 0
echo $grade8; // 1
echo $grade9; // 2
echo $grade10;// 3
Комментарии:
1. Именно то, что я искал. Спасибо
Ответ №2:
Одним из решений было бы динамическое создание переменных:
for ($g = 7; $g <= 10; $g ) {
for ($i = 0; $i <= 4; $i ) {
$counter = $g - 7;
if ($i == $counter) {
${'grade' . $g} = $grades[$i];
}
}
}
Ответ №3:
Вы должны использовать ARRAY вместо вашего метода. 🙂
Попробуйте посмотреть на переменную с именем «$$».
РЕДАКТИРОВАТЬ: может быть, что-то вроде
var $array = array();
for($g=7; $g<=10; $g )
{
for($i=0; $i<=4; $i )
{
$counter = $g - 7;
if($i != $counter) continue;
else $array[$grade.[$g]] = $grades[$i];
}
}
Ответ №4:
$data = new Array();
for($g = 7; $g <= 10; $g ){
for($i = 0; $i <= 4; $i ){
$counter = $g - 7;
if($i != $counter){
continue;
} else {
$data[$grade.[$g]] = $grades[$i]);
}
}
}
Комментарии:
1. $data = array(); также было бы возможно