Отображение текста один раз в цикле while в первом цикле - PullRequest
4 голосов
/ 07 мая 2009
<?php

$i = 0;

while(conditionals...) {

if($i == 0)
  print "<p>Show this once</p>";

print "<p>display everytime</p>";
$i++;
}
?>

Будет ли отображаться только «Показывать это один раз» в первый раз и только в это время, и отображаться ли «отображение каждый раз», пока цикл while проходит?

Ответы [ 4 ]

12 голосов
/ 07 мая 2009

Да, действительно.

Вы также можете комбинировать if и increment, чтобы не забыть увеличить:

if (!$i++) echo "Show once.";
6 голосов
/ 04 июня 2011

Вместо того, чтобы увеличивать его каждый раз, когда цикл запускается и тратить бесполезный ресурс, вы можете сделать следующее: если значение в первый раз равно 0, то вывести инструкцию и сделать значение переменной ненулевым. Прямо как флаг. Условие, вы не меняете значение переменной между циклами. Примерно так:

<?php

   $i = 0;

   while(conditionals...) {

      if($i == 0){
        print "<p>Show this once</p>";
        $i=1;
      }

      print "<p>display everytime</p>";
   }
?>
2 голосов
/ 07 мая 2009

Да, пока в цикле ничего не возвращает $ i обратно в 0

1 голос
/ 07 мая 2009

Да, будет, если условия не являются ложными с самого начала или если $ i не было установлено в 0 внутри цикла

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...