💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۱۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ امیر صالحی
کلمه کلیدی continue در حلقه ها
جامعه پی اچ پی ایجاد شده در ۲۷ دی ۱۳۹۸

سلام و احترام

 

در کنار کلمه کلیدی 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

سلام

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

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

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

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

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

لقمان آوند ۲۹ دی ۱۳۹۸، ۰۷:۳۷