for- och while-loopar
Upprepa kod med for-, while- och do-while-loopar.
for- och while-loopar är en gratis lektion i PHP Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för PHP Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i PHP Academy innehåller totalt 4 lektioner.
Varför loopar?
Loopar låter dig upprepa ett kodblock utan att kopiera och klistra in det. PHP tillhandahåller fyra loopkonstruktioner:
for– känt antal iterationerwhile– styrs av ett villkordo-while– körs minst en gångforeach– itererar över arrayer/objekt (nästa lektion)
for-loop
for-loopen har tre delar: initiering, villkor och inkrementering:
<?php
for ($i = 0; $i < 5; $i++) {
echo $i . ' ';
}
// Output: 0 1 2 3 4for-loop med nedräkning
Du kan räkna nedåt eller stega med valfritt intervall:
<?php
// Count down
for ($i = 10; $i >= 1; $i--) {
echo $i . ' ';
}
// Step by 2
for ($i = 0; $i <= 10; $i += 2) {
echo $i . ' '; // 0 2 4 6 8 10
}while-loop
En while-loop körs så länge villkoret är sant – villkoret kontrolleras före varje iteration:
<?php
$n = 1;
while ($n <= 5) {
echo $n . ' ';
$n++;
}
// Output: 1 2 3 4 5do-while-loop
En do-while kör alltid kroppen minst en gång – villkoret kontrolleras efteråt:
<?php
$attempt = 0;
do {
echo 'Trying... attempt ' . ($attempt + 1) . PHP_EOL;
$attempt++;
} while ($attempt < 3 && !connectToServer());
function connectToServer(): bool { return false; }Oändlig loop och break
En oändlig loop körs för evigt om du inte lämnar den med break:
<?php
$count = 0;
while (true) {
$count++;
if ($count >= 5) {
break; // exit loop
}
}
echo $count; // 5continue – hoppa över en iteration
continue hoppar över resten av den aktuella iterationen och går vidare till nästa:
<?php
for ($i = 1; $i <= 10; $i++) {
if ($i % 2 === 0) {
continue; // skip even numbers
}
echo $i . ' '; // 1 3 5 7 9
}Kapslade loopar
Loopar kan kapslas – praktiskt för tvådimensionella data som rutnät eller tabeller:
<?php
for ($row = 1; $row <= 3; $row++) {
for ($col = 1; $col <= 3; $col++) {
echo "($row,$col) ";
}
echo PHP_EOL;
}
// (1,1) (1,2) (1,3)
// (2,1) (2,2) (2,3)
// (3,1) (3,2) (3,3)Avbryta kapslade loopar
Använd break 2 (eller valfritt tal) för att lämna flera loopnivåer samtidigt:
<?php
for ($i = 0; $i < 5; $i++) {
for ($j = 0; $j < 5; $j++) {
if ($i === 2 && $j === 2) {
break 2; // exits both loops
}
echo "$i,$j ";
}
}Tips för loopprestanda
Undvik kostsamma operationer i loopvillkor:
<?php
// Bad: count() called on every iteration
for ($i = 0; $i < count($arr); $i++) { /* ... */ }
// Good: calculate once
$len = count($arr);
for ($i = 0; $i < $len; $i++) { /* ... */ }
// Also fine: foreach avoids this entirely
foreach ($arr as $item) { /* ... */ }Alternativ loopsyntax
Precis som if stöder loopar en alternativ syntax med kolon för inbäddning i HTML:
<?php $items = ['apple', 'banana', 'cherry']; ?>
<ul>
<?php for ($i = 0; $i < count($items); $i++): ?>
<li><?= htmlspecialchars($items[$i]) ?></li>
<?php endfor; ?>
</ul>Snabbkontroll
Vilken loop garanteras köra sin kropp minst en gång?
Sammanfattning: for- och while-loopar
Sammanfattning av loopar:
for– bäst när antalet iterationer är käntwhile– villkoret kontrolleras före varje iterationdo-while– kroppen körs minst en gångbreaklämnar en loop;break Nlämnar N nivåercontinuegår vidare till nästa iteration
Nästa avsnitt: foreach för iteration över arrayer.
Lär dig PHP med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 49
- Lektioner
- 195
Vanliga frågor
Är lektionen ”for- och while-loopar” gratis?
Ja – hela texten till ”for- och while-loopar” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i PHP Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i PHP Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”for- och while-loopar”?
Upprepa kod med for-, while- och do-while-loopar. Ni övar på PHP Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig PHP Academy?
Du behöver inga förkunskaper. Utbildningen i PHP Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”for- och while-loopar”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här PHP Academy-lektionen?
Ja. Varje PHP Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- if, elseif och else
- Switch- och match-satser
- for- och while-loopar
- foreach och loopkontroll