دستور if و elseif در php

دستور if و elseif در php

 

دستور شرطی if در PHP

نخستین عبارت کلیدی که در دستورات شرطی استفاده می شود “اگر” است که در برنامه نویسی به صورت “if” به کار می رود، با دستور if درستی یا نادرستی پاسخ ارزیابی شرطی را در مقایسه بررسی می کنیم، به طور مثال اگر متغیری با نام status برای تعیین وضعیت ثبت نام کاربران داشته باشیم و بخواهیم بررسی کنیم که آیا متغیر status برابر ۱ است یا خیر، به صورت ساده می نویسیم: اگر (if) متغیر status برابر با ۱ باشد (رابطه true باشد) دستورات بین {} را اجرا کن:

<?php
$status = 1;
if($status == 1) {
echo “کاربر گرامی شما در سایت ثبت نام کرده اید!”;
}
?>

بر اساس مثال بالا مقدار پیش فرض متغیر status برابر ۱ تعریف شده و بررسی رابطه  if درست (true) خواهد بود در نتیجه دستورات بین علامت های {} اجرا خواهند شد، اما در مثال زیر بررسی رابطه if مقادیر نادرست (false) خواهد داشت، چرا که وضعیت ثبت نام کاربر ۱ است اما در ارزیابی گفته ایم که اگر وضعیت او ۱ نبود دستورات را انجام بدهد.

 <?php
$status = 1;
if($status != 1) {
echo “کاربر گرامی شما هنوز در سایت ثبت نام نکرده اید!”;
}
?>

همانطور که در بحث عملگرها (Operators) در PHP گفتیم، عملگر == یعنی دو طرف رابطه برابر باشند و عملگر =! یعنی دو طرف رابطه برابر نباشند، در نمونه کد بالا دستورات بین علامت های {} اجرا نخواهند شد چرا که شرط آن برقرار نیست (متغیر  status  برابر ۱ است و مقایسه نابرابر بودن آن false خواهد بود.)

دستور شرطی elseif در PHP

دستور elseif به معنی “در غیر اینصورت اگر” مرحله ای مابین دستور if و else است، به فرض اگر بخواهیم قبل از خاتمه دادن به شرط if با دستور else، چند ارزیابی دیگر را نیز انجام دهیم از elseif استفاده می کنیم، هر شرط elseif با نادرست شدن ارزیابی شرط if (یا elseif) قبل از خود بررسی می شود، اگر نتیجه بررسی شرط elseif نادرست و false شود قاعدتا مفسر PHP از آن عبور کرده و ادامه کدها پردازش می شوند، به طور مثال:

<?php
$num = 1000;
$max = 2000;
if($num > $max) {
echo “متغیر num از max بزرگتر است!”;
} elseif($num == $max) {
echo “متغیر num با max برابر است!”;
} else{
echo “متغیر num از max کوچکتر است!”;
}

خروجی: متغیر num از max کوچکتر است!

در نمونه کد بالا بر اساس متغیرهای تعریف شده نتیجه ارزیابی دستورات if و elseif نادرست خواهد بود و در نتیجه بخش سوم یعنی else اجرا می شود.