اگر دنبال برنامه نویس برای ساخت افزونه ،قالب،سایت،برنامه ویندوز،اپلیکیشین اندروید،ربات تلگرام و.... هستید ،سفارش برنامه نویسی را مطالعه نمایید.
توجه : درخواست افزونه ،قالب، اسکریپت و نرم افزار و ... و سوالات و مشکلات خود را در انجمن ارسال نمایید
ساختارهای تصمیم گیری
بسیاری از اوقات هنگام نوشتن کدها در PHP میخواهید عملیات مختلفی در شرایط مختلف صورت پذیرد. در این زمان است که از عبارت شرطی در کد نویسیها استفاده میکنیم.عبارت شرطی(condition) در PHP به چند دسته تقسیم بندی میشوند.
عبارت if، یک سری از کدها اجرا میشود اگر و تنها اگر آن شرط خاص درست باشد.
عبارت If…else، یک سری از کدها اجرا میشود اگر آن شرط درست و شرط دیگر نادرست باشد.
عبارت if…elseif…else، انتخاب یکی از چند بلوک کدها برای آنکه اجرا شود
عبارت switch انتخاب یکی از بین بسیاری بلوک کدها برای آنکه اجرا شود.
عبارت شرطی If در PHP
همانطور که گفته شد عبارت شرطی If تنها زمانی که آن شرط خاص درست باشد کدها را اجرا میکند. برای نوشتن این دستور در PHP ابتدا if را نوشته و در مقابل آن شرط را داخل پرانتز ( ) قرار میدهیم و در آکولاد { ; } تنها زمانی که شرط درست است را بیان میکنیم.
if (condition) { code to be executed if condition is true; }
در ادامه یک مثال را مشاهده کنید، که خروجی آن “!Have a good day” است اما تنها زمانی شرط قابل قبول میباشد که ساعت قبل از ۲۰ را نشان دهد.
<!DOCTYPE html> <html> <body> <?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } ?> </body> </html>
عبارت if…esle درPHP
همان طور که قبلا انواع عبارات شرطی در PHP را تعریف کردیم، در عبارت if…else یک سری از کدها اجرا میشوند اگر آن شرط درست و شرط دیگر نادرست باشد.
به نحوه نوشتن آن در پی اچ پی توجه کنید.
if (condition) { code to be executed if condition is true; } else { code to be executed if condition is false; }
در این قاعده ابتدا شرط و در ادامه زمانی را که شرط درست باشد چه کدهایی انجام شود و اگر نادرست بود کدهای دیگری اجرا شود را بیان میکنیم. با یک مثال بیشتر با این قواعد آشنا شوید.
<!DOCTYPE html> <html> <body> <?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?> </body> </html>
خروجی این دستور زمانی که ساعت کمتر از ۲۰ باشد !Have a good day را چاپ میکند و اگر ساعت بیشتر از ۲۰ را نشان بدهد Have good night را نمایش میدهد. پس در این جا بسته به ساعت دو جواب متفاوت میتوانیم داشته باشیم.
عبارت if…elseif…else در PHP
همان طور که قبلا اشاره کردیم عبارت if…elseif…else، یعنی انتخاب یکی از چند بلوک کدها برای آنکه اجرا شود.همانند عبارات شرطی که قبلا توضیح دادیم، این عبارت شرطی را توضیح میدهیم.
if (condition) { code to be executed if condition is true; } elseif (condition) { code to be executed if condition is true; } else { code to be executed if condition is false; }
در این عبارت شرطی دو شرط تعریف میشود. به هر کدام از شرط ها یک else تعلق میگیرد تا درصورتی که شرط نادرست بودن کدهای دیگری اجرا شود. در یک مثال این قواعد را ببینیم.
در مثال قبل شرط ساعت کمتر از ۲۰ را داشتیم که اگر برقرار بود Have a good day چاپ میشد و اگر شرط برقرار نبود Have a good night چاپ میشد. اما در این مثال شرط ساعت کمتر از ۱۰ را نیز داریم که در صورتی که بر قرار باشد Have a good morning چاپ میشود.
<!DOCTYPE html> <html> <body> <?php $t=date("H"); if ($t<"10") { echo "Have a good morning!"; } elseif ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?> </body> </html>
عبارت شرطی switch در PHP
وقتی صحبت از عبارت switch میشود یعنی انتخاب یکی از بین بسیاری بلوک کدها برای آنکه اجرا شود. نحوه ی نوشتن این شرط با شرط ها دیگر کمی متفاوت است. برای نوشتن کدهایی خواناتر یا سرعت بیشتر عبارات شرطی بهتر است از قاعده switch در PHP استفاده کنیم. به نحوه نوشتن آن توجه کنید.
switch (n) { case label1: code to be executed if n=label1; break; case label2: code to be executed if n=label2; break; case label3: code to be executed if n=label3; break; ... default: code to be executed if n is different from all labels; }
در نوشتن این عبارت همانند مثال های قبل، پس از بیان شرط خود به صورت متغیر برای بیان موقعیت متغیرها شروع را با case و برای بستن موقعیت از break استفاده میکنیم. تمام موقعیت هایی که میخواهیم را مینویسیم هرگاه به هر کدام از آن ها رسید و شرط گفته شده برقرار بود آن را چاپ کرده و بقیه موقعیت ها را رها میکند و دستور به پایان میرسد. در حقیقت تنها یکی از این دستورها را که درست است را انتخاب میکند. و اگر هیچ یک از case ها درست نبود از کلمه default و بیان این که هیچ یک درست نیست میپردازیم. یک مثال مشاهده کنید.
<!DOCTYPE html> <html> <body> <?php $favcolor="red"; switch ($favcolor) { case "red": echo "Your favorite color is red!"; break; case "blue": echo "Your favorite color is blue!"; break; case "green": echo "Your favorite color is green!"; break; default: echo "Your favorite color is neither red, blue, or green!"; } ?> </body> </html>
همان طور که مشاهده میکنید تنها خروجی ما !Your favorite color is red است و بقیه موقعیت ها بدون بررسی شدن کنار گذاشته میشوند و به پایان دستور میرسد و چاپ میشود