Извлечение инкрементных строк с использованием цикла FOR (PHP) - PullRequest
1 голос
/ 08 октября 2019

Что я хочу сделать, это использовать цикл FOR для извлечения и отображения значений строк, уже отправленных из формы.

Я пробовал следующий код (созданный, чтобы дать вам некоторое представление о том, что япытаюсь добиться) но не получается. Я также пробовал различные руководства, но, похоже, они касаются пошаговой обработки VALUE строк, а не самих строк.

Я искал в Google и на различных форумах. Я также проверил свой PHP-праймер, но он не содержит ответа.

    $clip1="A";
    $clip2="B";
    $clip3="C";
    $clip4="D";
    $clip5="E";
    $clip6="F";
    $clip7="G";
    $clip8="H";
    $clip9="I";
    $clip10="J";

    for ($t=1; $t<=10; $t++)

    {echo "$clip[$t]";}

Я ожидал, что приведенный выше код получит значение каждой строки по очереди. То, что я ожидал, было что-то вроде этого:

ABCDEFGHIJ

Я не получаю ошибок. Мой код просто ничего не производит. Что я делаю не так?!

Спасибо вам большое, заранее.

Ответы [ 2 ]

1 голос
/ 08 октября 2019

Похоже, вы пытаетесь использовать переменные PHP * , в этом случае вам нужно немного изменить синтаксис:

$var = "clip$t"
echo $$var;

Все будет намного чище, есливместо этого вы использовали массив:

$clips = [
  'A', 'B', 'C', 'D', 'E', 'F',
  'G', 'H', 'I', 'J',
];

foreach ($clips as $clip) {
  echo $clip;
}

// Or...

for ($t = 0; $t < count($clips); $t++) {
    echo $clip[$t];
}
0 голосов
/ 08 октября 2019
$clip1="A";
$clip2="B";
$clip3="C";
$clip4="D";
$clip5="E";
$clip6="F";
$clip7="G";
$clip8="H";
$clip9="I";
$clip10="J";

for($t=1; $t<=10; $t++){
    echo $clip.$t."<br />";
}

Конечно, как сказал @Unimportant, вам лучше хранить их в массиве:

//fill the array
$clip = [];
foreach(range("A", "J" as $char){
   clip[] = $char;
}

//print the array
foreach($clip as $char){
    echo $char."<br />";
}
...