⊗ppPmLpCn 123 of 447 menu

Continue-instruktionen i PHP

Udover instruktionen break, der afslutter et loops udførelse, findes der også instruktionen continue, der starter en ny iteration af looppet. Denne instruktion kan undertiden være nyttig til at forenkle koden, selvom opgaven næsten altid kan løses uden den. Lad os se på et praktisk eksempel.

Lad os sige, at vi har en række tal. Lad os gennemgå dem med en løkke, og for de tal, der er delelige med 2, vil vi opløfte dem til anden potens og vise dem på skærmen, og for de tal, der er delelige med 3, vil vi opløfte dem til tredje potens og vise dem på skærmen.

Her er løsningen på den beskrevne opgave:

<?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; } } ?>

Som du kan se, gentages linjen echo $res to gange. Lad os flytte den uden for if, sådan her:

<?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; // flyttet visningen ud af betingelsen } ?>

Men nu fungerer vores script dog en smule anderledes: det vil vise sig, at også for almindelige elementer, der ikke blev behandlet gennem vores if, vil udskrivningen af variablen $res blive udført, hvilket ifølge betingelsen i vores opgave ikke er ønsket.

Lad os rette problemet ved at tilføje en else betningelse til vores if, som vil udløses for elementer, der ikke er delelige med 2 og 3, og vi vil kalde instruktionen continue der, som straks vil sende os videre til den næste iteration af løkken:

<?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; // går videre til næste iteration af løkken } echo $res; // udføres, hvis delelig med 2 eller 3 } ?>

Skriv en løkke, som kun viser lige tal fra 1 til 100, og springer de ulige tal over ved hjælp af continue.

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis