Programunk figyelmeztet, ha 0-val végzünk műveletet, azaz a következő figyelmeztetést jeleníti meg:
Warning: Division by zero in, majd kiírja, melyik fájlban és hányadik sorban (on line ...) talált értékelhetetlen műveletet.
<?php for ($i=4;$i>-5;$i--) { print(" <br /> 10 / $i = ". 10/$i); } ?> PHP 5.4.xx verziótól kezdve, a "0"-val történő műveleteket, ugorjuk át. <?php for ($i=4;$i>-5;$i--) { if($i==0){continue;} print(" <br /> 10 / $i = ". 10/$i); } ?> |
Programunk eredménye: 10 / 4 = 2.5 10 / 3 = 3.3333333333333 10 / 2 = 5 10 / 1 = 10 10 / -1 = -10 10 / -2 = -5 10 / -3 = -3.3333333333333 10 / -4 = -2.5 |
Példa, osztás nullával, PHP 5.4.xx verziótól kezdve, hibát generál. 10/0 van meghatározva, ezt a program, hibajelzéssel (Division by zero in) értékeli. Hiba elhárítás: 1. Nem helyezünk el olyan utasítást, melyben osztás vagy szorzás 0-val történik. 2. Ha ezt a porgram, például a for ciklus produkálja lefutás közben, akkor egy if($i==0){continue;} utasítással, ugorjuk át. |
<?php for ($i=4;$i>-5;$i--) { if ($i==2) print(" <br /> 10 / $i = ". 10/$i); } ?> |
Programunk eredménye: 10 / 2 = 5 |
<?php for ($i=4;$i>-5;$i--) { if ($i==2 OR $i==0) continue; print(" <br /> 10 / $i = ". 10/$i); } ?> |
Programunk eredménye: 10 / 4 = 2.5 10 / 3 = 3.3333333333333 10 / 1 = 10 10 / -1 = -10 10 / -2 = -5 10 / -3 = -3.3333333333333 10 / -4 = -2.5 |
Páratlan számú műveletek kiíratása. <?php for ($i=4;$i>-5;$i--) { if ($i % 2) print(" <br> 10 / $i = ". 10/$i); } ?> |
10 / 3 = 3.3333333333333 10 / 1 = 10 10 / -1 = -10 10 / -3 = -3.3333333333333 |
Páratlan számú műveletek kiíratásának átugrása. <?php for ($i=4;$i>-5;$i--) { if ($i % 2 OR $i==0) continue; print(" <br> 10 / $i = ". 10/$i); } ?> |
10 / 4 = 2.5 10 / 2 = 5 10 / -2 = -5 10 / -4 = -2.5 |
Megjegyzés : Ne feledjük, hogy a PHP-ben a switch utasítás használata ismétlődő struktúrája szempontjából, továbbra is elfogad egy elhagyható szám paramétert, amely megadja, hogy hány egymásba ágyazott struktúrának a hátralévő részét kell átugrani a végére. A 0, és 1, ugyanaz, mint amikor a futás tovább folytatódik.
<?php
$i = 0;
while ($i++ < 5) {
echo "Outer, azaz külső<br />\n";
while (1) {
echo " Middle, azaz középső<br />\n";
while (1) {
echo " Inner, azaz belső<br />\n";
// continue nem tíiltható le,
// értékének: 1-et és 2-őt ne írj be, mert végtelen ciklus lesz, irhatunk 3-at vagy 4-et
continue 3;
}
echo "Ezt soha nem fogja kiírni.<br />\n";
}
echo "Ezt sem.<br />\n";
}
echo "Ezt akkor, ha értéke 3. <br />\n";
?>
|
Outer, azaz külső Middle, azaz középső Inner, azaz belső Outer, azaz külső Middle, azaz középső Inner, azaz belső Outer, azaz külső Middle, azaz középső Inner, azaz belső Outer, azaz külső Middle, azaz középső Inner, azaz belső Outer, azaz külső Middle, azaz középső Inner, azaz belső Ezt akkor, ha értéke 3 |