⊗ppPmLpCn 123 of 447 menu

PHP-də continue instruksiyası

Dövrü dayandıran break instruksiyasından əlavə, dövrün yeni iterasiyasını başladan continue instruksiyası da mövcuddur. Bu instruksiya bəzən kodu sadələşdirmək üçün faydalı ola bilər, baxmayaraq ki, demək olar ki, həmişə problemi onsuz da həll etmək olar. Gəlin praktiki bir nümunəyə baxaq.

Tutaq ki, bizə ədədlər massivi verilib. Gəlin onu dövrə ilə gəzək və 2-ə bölünən ədədləri kvadrata yüksəldib ekrana çıxaraq, 3-ə bölünən ədədləri isə kuba yüksəldib ekrana çıxaraq.

Təsvir olunan məsələnin həlli belədir:

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

Gördüyünüz kimi, echo $res sətri iki dəfə təkrarlanır. Gəlin onu if-dən xaricə çıxaraq, belə:

<?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; // çıxışı şərtdən kənara çıxardıq } ?>

Lakin indi bizim skript bir az fərqli işləyir: belə çıxır ki, bizim if ilə işlənməyən adi elementlər üçün də $res dəyişəninin ekrana çıxarılması yerinə yetiriləcək, bu isə bizim məsələnin şərtinə görə lazım deyil.

Problemi aradan qaldırmaq üçün if23-ə bölünməyən elementlər üçün işləyəcək else şərti əlavə edək və orada dərhal bizi dövrün yeni iterasiyasına atacaq continue instruksiyasını çağıraq:

<?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; // dövrün yeni iterasiyasına keçəcək } echo $res; // 2-yə və ya 3-ə bölünəndə icra olunacaq } ?>

continue istifadə edərək tək ədədləri atlayaraq, yalnız 1-dən 100-ə qədər olan cüt ədədləri çıxaran bir dövr yazın.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et