⊗ppPmLpCn 123 of 447 menu

Navodila continue v PHP

Poleg navodila break, ki konča delo zanke, obstaja tudi navodilo continue, ki začne novo iteracijo zanke. To navodilo je lahko včasih uporabno za poenostavitev kode, čeprav je skoraj vedno mogoče rešiti problem tudi brez njega. Poglejmo si praktični primer.

Recimo, da imamo dano polje s števili. Poglejmo si ga z zanko in števila, ki so deljiva z 2, povišajmo v kvadrat in izpišimo na zaslon, števila, ki so deljiva z 3, pa povišajmo v kocko in izpišimo na zaslon.

Tu je rešitev opisanega problema:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; foreach ($arr as $elem) { if ($elem % 2 === 0) { $res = $elem * $elem; echo $res; } elseif ($elem % 3 === 0) { $res = $elem * $elem * $elem; echo $res; } } ?>

Kot lahko vidite, se vrstica echo $res ponovi dvakrat. Izločimo jo iz if, takole:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; foreach ($arr as $elem) { if ($elem % 2 === 0) { $res = $elem * $elem; } elseif ($elem % 3 === 0) { $res = $elem * $elem * $elem; } echo $res; // izpis smo premaknili izven pogoja } ?>

Vendar pa naš skript zdaj deluje nekoliko drugače: izkazalo se bo, da se bo za običajne elemente, ki niso bili obdelani z našim if, izvedel tudi izpis spremenljivke $res na zaslon, kar po pogojih našega problema ne potrebujemo.

Popravimo težavo tako, da našemu if dodamo še pogoj else, ki se bo sprožil za elemente, ki niso deljivi z 2 in 3, in kličemo tam navodilo continue, ki nas bo takoj preusmerilo na novo iteracijo zanke:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; foreach ($arr as $elem) { if ($elem % 2 === 0) { $res = $elem * $elem; } elseif ($elem % 3 === 0) { $res = $elem * $elem * $elem; } else { continue; // preidemo na novo iteracijo zanke } echo $res; // izvede se, če je deljivo z 2 ali 3 } ?>

Napišite zanko, ki izpiše samo soda števila od 1 do 100, preskočite liha z uporabo continue.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni