فرق بین if و switch در PHP چیست ؟
فرق بین if و switch در PHP – حتما به شباهت دستور های if و switch پی برده اید . هر دو آن در صورت برقرار بودن کد به خصوصی را اجرا می کنند .
اما تفاوت های کلی هم این 2 دستور دارند .
بررسی دستور if/else
در آن می شود از عملگر های logical استفاده کرد اما در switch امکان پذیر نیست .
عملگر های logical
<?php $number_a = 12; if($number_a == 12 || $number_a == 14){ echo "statement 12 OR 14"; }else{ echo "statement else"; } // statement 12 OR 14 ?>
عملگر های مقایسه ای <> کوچک تر و بزرگ تر
در if/else استفاده از این عملگر امکان پذیر می باشد اما در switch خیر .
<?php $number_a = 119; if(120 < $number_a){ echo "statement 1"; }else if($number_a < 120 && 110 < $number_a){ echo "statement 2"; }else{ echo "statement else"; } // statement 2 ?>
بررسی دستور switch
در این دستور تنها می توان از قانون مقایسه ای که در if/else وجود دارد به صورت
if( x == y)
استفاده کرد اما مزیتی که switch دارد این است که خوانایی بهتر و کدنویسی تمیز تری را به ما ارائه می دهد .
در دستور swtich
<?php $number_a = 12; switch($number_a){ case "12": echo "statement 1"; break; case "14": echo "statement 2"; break; default: echo "statement other"; break; } // statement 1 ?>
در دستور if/else
<?php $number_a = 12; if($number_a == "12"){ echo "statement 1"; }else if($number_a == "14"){ echo "statement 2"; }else{ echo "statement other"; } // statement 1 ?>
نتیجه گیری
توصیه می شود در صورت که در برنامه تان قرار است از شرط x == y استفاده کنید switch را مورد استفاده قرار دهید تا تمیز و خوانا تر باشد .
در غیر اینصورت استفاده از if/else مورد نیاز است .
ارسال نظر