continue: Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
 
(2 mellanliggande sidversioner av samma användare visas inte)
Rad 23: Rad 23:
Ovanstående exempel kommer att producera:
Ovanstående exempel kommer att producera:


* ett
<pre>
* tre
ett
* fem
tre
 
fem
</pre>
<pre>
<pre>
<?php
<?php
Rad 46: Rad 47:


Ovanstående exempel kommer att producera:
Ovanstående exempel kommer att producera:
 
<Pre>
* Yttre
Yttre
* Mellan
Mellan
* Inre
Inre
* Yttre
Yttre
* Mellan
Mellan
* Inre
Inre
* Yttre
Yttre
* Mellan
Mellan
* Inre
Inre
* Yttre
Yttre
* Mellan
Mellan
* Inre
Inre
* Yttre
Yttre
* Mellan
Mellan
* Inre
Inre
 
</pre>
Att utelämna semikolon efter `continue` kan leda till förvirring. Här är ett exempel på vad du inte bör göra.
Att utelämna semikolon efter `continue` kan leda till förvirring. Här är ett exempel på vad du inte bör göra.


Rad 76: Rad 77:


Man kan förvänta sig resultatet att vara:
Man kan förvänta sig resultatet att vara:
 
<pre>
* 0
0
* 1
1
* 3
3
* 4
4
</pre>


=== Ändringslogg för continue ===
=== Ändringslogg för continue ===
Version Beskrivning
{| class="wikitable"
7.3.0 `continue` inom en `switch` som försöker agera som ett `break`-uttalande för `switch` kommer att utlösa en '''E_WARNING'''.
|+
!Version
!Beskrivning
|-
|7.3.0
|`continue` inom en `switch` som försöker agera som ett `break`-uttalande för `switch` kommer att utlösa en '''[[E_WARNING]]'''.
|}


= Sidslut =
= Sidslut =

Nuvarande version från 18 augusti 2024 kl. 07.16

continue

(PHP 4, PHP 5, PHP 7, PHP 8)

`continue` används inom slingstrukturer för att hoppa över resten av den aktuella slingiterationen och fortsätta exekveringen vid villkorsutvärderingen och sedan vid början av nästa iteration.

Not

I PHP betraktas `switch`-uttalandet som en slingstruktur för syftet med `continue`. `continue` beter sig som `break` (när inga argument anges) men kommer att ge en varning eftersom detta sannolikt är ett misstag. Om en `switch` finns inuti en slinga, kommer `continue 2` att fortsätta med nästa iteration av den yttre slingan.

`continue` accepterar ett valfritt numeriskt argument som berättar hur många nivåer av inneslutande slingor den ska hoppa till slutet av. Standardvärdet är 1, vilket innebär att den hoppar till slutet av den aktuella slingan.

<?php
$arr = ['noll', 'ett', 'två', 'tre', 'fyra', 'fem', 'sex'];
foreach ($arr as $key => $value) {
    if (0 === ($key % 2)) { // hoppa över medlemmar med jämn nyckel
        continue;
    }
    echo $value . "\n";
}
?>

Ovanstående exempel kommer att producera:

ett
tre
fem
<?php
$i = 0;
while ($i++ < 5) {
    echo "Yttre\n";
    while (1) {
        echo "Mellan\n";
        while (1) {
            echo "Inre\n";
            continue 3;
        }
        echo "Detta blir aldrig utskrivet.\n";
    }
    echo "Inte heller detta.\n";
}
?>

Ovanstående exempel kommer att producera:

Yttre
Mellan
Inre
Yttre
Mellan
Inre
Yttre
Mellan
Inre
Yttre
Mellan
Inre
Yttre
Mellan
Inre

Att utelämna semikolon efter `continue` kan leda till förvirring. Här är ett exempel på vad du inte bör göra.

<?php
for ($i = 0; $i < 5; ++$i) {
    if ($i == 2)
        continue
    print "$i\n";
}
?>

Man kan förvänta sig resultatet att vara:

0
1
3
4

Ändringslogg för continue

Version Beskrivning
7.3.0 `continue` inom en `switch` som försöker agera som ett `break`-uttalande för `switch` kommer att utlösa en E_WARNING.

Sidslut

Orginalhemsidan på Engelska : https://www.php.net/manual/en/control-structures.continue.php
PHP
Språkreferens
Språkreferens#Kontrollstrukturer