نرم افزار کامپیوتر
تحقیق ، پروژه و مقاله های دانشجویی و دانش آموزی رشته کامپیوتر- software for computer

 آموزش PHP - بخش هفتم

بخش هفتم آموزش php این با کار با حلقه ها را دنبال خواهیم کرد.

امید وارم نظر یادتون نره.

 

حلقه ها 

 

تا اینجا روشهایی را دیدیم که به وسیله آنها کد می تواند بین اینکه کدام کد را اجرا کند انتخاب داشته باشد. همچنین کد می تواند تصمیم بگیرد که چند دفعه یک قسمت را اجرا کند.

حلقه هایی برای این ایجاد شده اند که به ما اجازه دهند یک عملیات را چند مرتبه اجرا نماییم. تقریبا بدون استثناء ، همه حلقه ها آنقدر اجرا می شوند تا اینکه یک شرایطی (که از توسط ما مشخص می شود) اتفاق بیافتد و یا اینکه ما شخصا دستور قطع و خروج از loop را بدهیم.

WHIEL :

فرم کلی :

while ( expression 

// do something 
}  

?>

 

 

 

 

تا وقتی که عبارت while (منظور همان expression داخل پرانتز جلوی آن است) True باشد کد داخل while پشت سر هم اجرا خواهد شد. معمولا شما در داخل حلقه کاری می کنید که عبارت مرتبا تغییر نماید و یک جا False شود در غیر اینصورت حلقه ما تا بینهایت اجرا می شود. 

مثال زیر حلقه ای ایجاد می کند و مضارب 2 را نمایش می دهد.

$counter 1
while ( $counter <= 12 

print "$counter times 2 is ".$counter*2).""
$counter++; 

?> 

 

  

 
 
 
 
 
در خط اول ما مقدار counter را 1 گذاشتیم. در خط دو حقله ای تشکیل دادیم که تا وقتی اجرا می شود که counter از 12 کوچکتر و یا مساوی آن باشد. در خط چهار خروجی برنامه را می نویسیم و در خط پنج به counter دو عدد اضافه می کنیم. روش ++ ، counter  را افزایش می شدهد .
پس خروجی برنامه می شود. 2 - 4 - 8 - 10 - 12
اگر ما در خط پنجم فراموش می کردیم که counter را زیاد کنیم این حلقه تا بینهایت اجرا می شد چون هیچگاه counter زیاد نمی شد و هیچوقت از 12 بیشتر نمی شد.
 
 
حلقه do و while 
این حلقه شبیه حلقه while است فقط سر و ته شده است ! بزرگترین فرق آن این است که ابتدا کدها اجرا می شوند و بعد درستی یا نادرستی عبارت چک می شود.
فرم کلی :

do { 
// code to be executed 

while ( expression );

?> 

 
 
 
 
 
 
 
 
توجه : آخر عبارت while در خط آخر حتما باید سیمی کالن( ; ) گذاشته شود.
این متد وقتی خیلی به درد می خورد که شما بخواهید کد شما حداقل یکبار اجرا شود حتی اگر شرایط عبارت while اتفاق نیافتاده باشد.

$num 1
do 

print "Execution number: $num  "
$num++; 

while ( $num 200 && $num 400 ); 
?> 

 
 
 
 
 
 
 
 
در مثال بالا حقله do....while کنترل می کند که num بزرگتر از 200 و کوچتر از 400 باشد. چون ما num رو در خط یک مساوی یک قراردادیم پس عبارت while درست نیست و False می باشد 
 
ولی در هر حال خروجی کد حداقل یک خط است که نوشته می شود Execution numnber : 1 .
 
حقله For 
 
ما هیچ چیزی از استفاده از For به دست نمی آوریم که نتوانیم با While آن را ایجاد کنیم. ولی در هر حال در اغلب مواقع استفاده از For کدهای زیباتر و بهتری نسبت به while ایجاد می کند. 
فرمت کلی به صورت زیر است : 
 

for ( variable assignmenttest expressionvariable increment 

// code to be executed 
}  

 
 
 
 
 
هر عبارت داخل for باید حتما باسیمی کالن( ; ) از هم جدا شوند. معمولا ، عبارت اول یک متغیر شمارنده ایجاد می کند ، و در عبارت دوم عبارت کنترلی برای loop است ، و قسمت سوم اضافه کردن و کم نمودن متغیر را ایجاد می کند.
 
مثال : 
 

for ( $counter=1$counter<=12$counter++ ) 

print "$counter times 2 is ".$counter*2).""

?> 

 
 
 
 
 
 
در خط یک بالا می توانیم ببینیم ، در قسمت اول counter را مساوی 1 نمودیم و در عبارت وسط محدود کردیم که حلقه تا وقتی کار کند که counter از 12 کوچکتر و یا مساوی آن باشد. در قسمت سوم هم عبارتی است که هر بار که کد اجرا شود یک عدد به counter اضافه نماید.
مثال بالا و مثال قبلی هر دو یک خروجی را می دهند فقط کد for کمی جمع و جور تر از while است. به علت اینکه شروع ، پایان و شرایط حلقه در همان خط اول در For مشخص است ، با یک نگاه به این نوع حلقه کل حقله دستمان می آید. 
 
خروج از حلقه با استفاده از دستور break 
در هر دو روش ایجاد حلقه دستوری برای پایان دادن حلقه وجود دارد. گاهی اوقات نیاز است که وقتی کد به شرایط خاصی رسید حلقه پایان یابد. 
مثلا :

for ( $counter=1$counter <= 10$counter++ ) 

$temp 4000/$counter
print "4000 divided by $counter is... $temp"

?> 

 
 
 
 
 
 
در کد بالا ما عدد 4000 رو بر counter که از 1 تا 10 متغیر است تقسیم می کنیم و خروجی را چاپ می کنیم. تا اینجا کد بدون نقص به نظر می رسد. ولی اگه مثلا counter از ورودی کاربر گرفته شود و کاربر مثلا عددی منفی بزند یا صفر وارد نماید و یا اینکه یک کلمه به جای عدد وارد کند. در این صورت ما باید حلقه رو قطع کنیم چون می دونیم که تقسیم کردن یک عدد بر صفر ایجاد خطا در php می کند.
مثلا فرض کنیم از -4 شروع کنیم تا 10 این وسط صفر هم جزو مقادیر counter خواهد شد. 
 

$counter − 4
for ( ; $counter <= 10$counter++ ) 

if ( $counter == 
break; 
$temp 4000/$counter
print "4000 divided by $counter is... $temp"

?> 

 
 
 
 
 
 
 
 
 
در کد بالا همونطور که می بینیم در خط چهار و پنج تعریف کردیم که اگر counter صفر شد حلقه قطع شود. بنابراین کد بعد از رسیدن به صفر و به break می رسد حلقه را قطع می نماید و به خط 9 می رود.
 
شما هر کدام از قسمتهای for رو می تونید خالی بگذارید ولی ; ها رو حتما باید بگذارید.
 
استفاده از دستور continue 
 
خوب ، حالا فرض کنید که ما در کد بالا نمی خواهیم که وقتی به صفر رسید کد قطع شود و فقط می خواهیم که حلقه برای مقدار صفر اجرا نشود ولی باقی مقادیر اجرا شود. در این حالت از دستور continue استفاده می کنیم.
 
 

$counter − 4
for ( ; $counter <= 10$counter++ ) 

if ( $counter == 
continue; 
$temp 4000/$counter
print "4000 divided by $counter is... $temp"

?> 

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

پایان بخش هفتم

منتظر بخش هشتم باشید.

برای خرید آموزش تصویری PHP به زبان فارسی می توانید از لینک زیر استفاده کنید.

 


ارزانسرا و دانلود سرا

نظرات شما عزیزان:

نام :
آدرس ایمیل:
وب سایت/بلاگ :
متن پیام:
:) :( ;) :D
;)) :X :? :P
:* =(( :O };-
:B /:) =DD :S
-) :-(( :-| :-))
نظر خصوصی

 کد را وارد نمایید:

 

 

 

عکس شما

آپلود عکس دلخواه:




ارسال توسط ابوالفضل صادقی-abolfazl sadeghi