کلمه کلیدی continue در حلقه ها

پرسیده شده
فعالیت 1551 روز پیش
دیده شده 1008 بار
2

سلام و احترام

 

در کنار کلمه کلیدی break ما continue هم داریم که کار تقریبا بر عکس break را انجام میدهد.

برای مثال ما گفتیم که اگه تو حلقه مقدار $i برابر با یه مقداری شد از حلقه بیرون بپره

اما در continue این ساختار برعکس است.

مثال:

 

for ($i = 1; $i <= 10; $i++) {
    if ($i % 2 == 0) {
        echo  "<br>";
        echo " $i % 2 == 0";
        echo  "<br><br>";
        continue;
    }
    echo "<span style='color:red;'>" .  $i .  "</span>" . "<br>";
}

# Output

Num: 1

2 % 2 == 0

Num: 3

4 % 2 == 0

Num: 5

6 % 2 == 0

Num: 7

8 % 2 == 0

Num: 9

10 % 2 == 0

 

من تو این حلقه یه شرط گذاشتم که گفتم اگر هر بار باقی مانده $i بر 2 برابر با 0 شد آن دور حلقه را رد یا continue کن. این به این معناست که دیگر به اجرای ادامه کد نمیرود و عمل echo انجام نمیشود و به دور بعدی حلقه ادامه میدهد.

 

ناگفته نماند که این ساختار حلقه که من استفاده کردم هنوز استاد صالحی تدریس نکردن و مطمئنم که در جلسات بعد به این ساختار میپردازن

 

ولی اگه بخواهید یه چیز کلی ازش بدونید این ساختار خلاصه شده ی حلقه while یا do while که میتونید دربارش تو لینک زیر بخونید:

For loop

فایل پیوست

امیر صالحی
امیر صالحی

27 دی 98

9
حذف شده

سلام

بله با استفاده از دستور continue اون دور حلقه کنسل میشه از همو نقطه و دور بعدی شروع میشه

یه مثال ساده برای اعداد فرد کوچکتر از 50 با استفاده از دستور continue:

for($i=0 ; $i<50 ; $i++){
  if($i % 2 == 0){
     continue;
  }
  echo "$i, ";
}

در واقع تو کد بالا چک کردیم اگر عدد زوج بود دستور continue اجرا بشه و و اون دور حلقه (که ادامش چاپ عدد هست) اجرا نشه.

یعنی echo فقط برای دوره هایی از حلقه که $i فرد هست اجرا میشه و این هم یه نوع پیاده سازی هست!

فایل پیوست

لقمان آوند

توسط

لقمان آوند

29 دی 98