حلقه های بی نهایت

اشتباهات کوچیک در نوشتن حلقه ها میتونه باعث بی نهایت شدن اون بشه. حلقه های بی نهایت (infinite loops) فشار زیادی روی CPU وارد میکنن و میتونن باعث فریز شدن یا هنگ کردن کامپیوتر، ایجاد Deadlock یا Segfault بشن.

نکته:  منظور ما از حقله های بی نهایت، حلقه های بی نهایتی هستند که در بین تکرارها هیچ توقفی وجود نداره در غیر اینصورت حلقه های بی نهایت بسیار مفید و کاربردی اند.

 

حلقه بی نهایت چطور بوجود میاد؟

به چند مورد که زیاد پیش میاد اشاره میکنیم که باید در کد نویسی دقت داشته باشید.

ادامه‌ی خواندن

حلقه foreach در PHP

حلقه foreach همونطور که از اسمش پیداست به ازای هر آیتم در یک آرایه، کدهای داخل بلاک رو اجرا میکنه.  یعنی اگر پنج ایتم در یک آرایه داشته باشیم حقله ما ۵ بار تکرار میشه. معمولا زمانی که نمیدونیم حلقه ما باید چند بار اجرا بشه یا از تعداد ایتم ها خبر نداریم از foreach استفاده میکنیم.

 

Form 1- Syntax

foreach (array_expression as $value)
   {
   statement
   }

در این فرم، حلقه به ازای هر ایتم در آرایه اجرا میشه و در هر تکرار مقدار المنت جاری در متغیر value$ قرار میگیره.

 

Form 2- Syntax

foreach (array_expression as $key => $value)
   {
   statement
   }

این فرم ویژگی فرم بالا رو داره به علاوه، کلید هر آیتم آرایه ( در آرایه های اندیسی(Indexed array) عدد و در آرایه های متحد(Associative array) نام ایتم مشخص شده) رو هم در Key قرار میده.
ادامه‌ی خواندن

حلقه Do while در PHP

حلقه Do while ویرایش شده حلقه while هست که در درس قبلی توضیح دادیم. تنها فرق این حلقه اینه که شرط بعد از اجرا شدن کدها بررسی میشه پس در حلقه Do while  کدهای داخل بلاک حداقل یک بار اجرا میشن.

Syntax

do
  {
  code to be executed;
  }
while (condition);

 

ادامه‌ی خواندن

حلقه While در PHP

حلقه ها همیشه و در همه  زبان های برنامه نویسی کاربرد دارند، ما همیشه در برنامه نویسی نیاز داریم که یک تکه کد رو چند بار اجرا کنیم و این حقله ها هستند که به کمک ما میان.

 

حلقه ها در PHP

  •  While – تا زمانی که شرط داده شده درست باشد کدهای داخل بلاک را اجرا میکند.
  • DoWhile – یک بار کدهای داخل بلاک را اجرا کرده و بعد از آن شرط را بررسی میکند اگر درست بود به کارش ادامه میدهد.
  • For – به تعداد دفعاتی که مشخص میکنیم کدهای داخل بلاک را اجرا میکند.
  • Foreach – به ازای هر آیتم در یک آرایه  کدهای داخل بلاک را اجرا میکند.

ادامه‌ی خواندن