Pergunta

<?php

$i = 0;

while(conditionals...) {

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

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

Será que isso só mostrar "Mostrar esta vez" pela primeira vez e só nesse momento, e mostrar a "toda exibição", desde que o loop while passa por?

Foi útil?

Solução

Sim, é verdade.

Você também pode combinar o caso e o incremento, para que você não vai esquecer de incremento:

if (!$i++) echo "Show once.";

Outras dicas

Ao invés de incrementá-lo cada vez que o loop é executado e desperdiçando recursos inúteis, o que você pode fazer é, se o valor for 0, pela primeira vez, em seguida, imprimir a declaração e fazer o valor da variável como não-zero. Assim como uma bandeira. Condição, você não está alterando o valor da variável entre o lugar loop. Algo parecido com isto:

<?php

   $i = 0;

   while(conditionals...) {

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

      print "<p>display everytime</p>";
   }
?>

Sim, contanto que nada nos conjuntos de loop $ i de volta para 0

Sim, vai, a menos que as condições são falsas desde o início ou $ i foi definido para 0 dentro do loop

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top