فرق بین if و switch در PHP چیست ؟

فرق بین 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 مورد نیاز است .

ارسال نظر