⊗ppPmLpCn 123 of 447 menu

Инструкција continue во PHP

Покрај инструкцијата break, која ја завршува работата на циклусот, постои и инструкцијата continue, која започнува нова итерација на циклусот. Оваа инструкција понекогаш може да биде корисна за поедноставување на кодот, иако практично секогаш задачата може да се реши и без неа. Ајде да погледнеме на практичен пример.

Нека ни е даден array со броеви. Ајде да го итерираме со циклус и броевите кои се делат на 2, да ги подигнеме на квадрат и да ги испечатиме на екран, а броевите кои се делат на 3, да ги подигнеме на коцка и да ги испечатиме на екран.

Еве го решението на опишаната задача:

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

Како што можете да видите, линијата echo $res се повторува два пати. Ајде да ја извадиме надвор од if, еве вака:

<?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; // го извадивме печатењето надвор од условот } ?>

Сепак, сега нашиот скрипт работи малку поинаку: ќе испадне дека и за обичните елементи, кои не се обработени преку нашиот if, ќе се изврши печатење на променливата $res на екран, што според условот на нашата задача не ни треба.

Да ја поправиме проблематиката, додавајќи му на нашиот if уште еден услов else, кој ќе се активира за елементи кои не се делат на 2 и 3, и ќе ја повикаме таму инструкцијата continue, која веднаш ќе не префрла на нова итерација од циклусот:

<?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; // ќе преминеме на нова итерација на циклусот } echo $res; // ќе се изврши, ако се дели на 2 или 3 } ?>

Напишете циклус, кој печати само парни броеви од 1 до 100, прескокнувајќи ги непарните со continue.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј