Display text once within while loop on the first loop
Solution 1
Yes, indeed.
You can also combine the if and the increment, so you won't forget to increment:
if (!$i++) echo "Show once.";
Solution 2
Rather than incrementing it every time the loop runs and wasting useless resource, what you can do is, if the value is 0 for the first time, then print the statement and make the value of the variable as non-zero. Just like a flag. Condition, you are not changing the value of the variable in between the loop somewhere. Something like this:
<?php
$i = 0;
while(conditionals...) {
if($i == 0){
print "<p>Show this once</p>";
$i=1;
}
print "<p>display everytime</p>";
}
?>
Solution 3
Yes, as long as nothing in the loop sets $i back to 0
Solution 4
Yes it will, unless the conditions are false from the start or $i was set to 0 inside the loop
agucho
Web Application Developer, using PHP, CodeIgniter, Laravel, jQuery, html, css, js, Twitter Bootstrap, LESS, MySQL, rsync, git, ExpressionEngine add-on developer
Updated on June 05, 2020Comments
-
agucho almost 4 years
<?php $i = 0; while(conditionals...) { if($i == 0) print "<p>Show this once</p>"; print "<p>display everytime</p>"; $i++; } ?>
Would this only show "Show this once" the first time and only that time, and show the "display everytime" as long as the while loop goes thru?
-
AndrewL64 almost 9 yearsAdding a non-zero value inside the loop worked for me!! Thank you