⊗ppPmUFRL 200 of 447 menu

Silmukka ja return PHP:ssä

Oletetaan, että meillä on funktio, joka palauttaa lukujen summan 1:stä 5:een:

<?php function func() { $sum = 0; for ($i = 1; $i <= 5; $i++) { $sum += $i; } return $sum; } $res = func(); echo $res; // tulostaa 15 ?>

Oletetaan nyt, että sijoitamme return:n silmukan sisään, näin:

<?php function func() { $sum = 0; for ($i = 1; $i <= 5; $i++) { $sum += $i; return $sum; } } $res = func(); echo $res; ?>

Tässä tapauksessa silmukka pyörähtää vain yhden iteraation verran ja funktiosta (ja samalla silmukasta) poistutaan automaattisesti. Yhden silmukan iteraation aikana muuttujaan $sum ehtii tulla vain luku 1, eikä koko tarvittava summa.

Mitä seuraava koodi tulostaa näytölle suorituksen jälkeen:

<?php function func($num) { $sum = 0; for ($i = 1; $i <= $num; $i++) { $sum += $i; return $sum; } } echo func(5); ?>

Selitä miksi.

Mitä kirjoittaja yritti tehdä tällä koodilla? Korjaa kirjoittajan virhe.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää