Rumah >pembangunan bahagian belakang >masalah PHP >php中if和switch的区别

php中if和switch的区别

(*-*)浩
(*-*)浩asal
2019-09-11 15:37:564831semak imbas

php中if和switch的区别

当被判断的值是常量(固定不变的值)时,switch的运行效率比ifelse的运行效率高;(推荐学习:PHP编程从入门到精通

$status=3;   // 变判断的值为常量
switch($status){
  case 1:
    echo '常量值为1';
    break;   // 跳出循环
  case 2:
    echo '常量值为2';
    break;
  case 3:
    echo '常量值为3';
    break;
}

当被判断值为变量,ifelse的运行效率高于switch,ifelse贯彻一判到底的方针,会从第一个条件开始判断,直到最后一个else,所以学会使用switch有好处;

$a = $_GET['a']; // 通过get传值后接值; 被判断的值
if($a=1){
  echo '变量a的值为1';
}elseif($a=2){
  echo '变量a的值为2';
}elseif($a=3){
  echo '变量a的值为3';
}else{
  echo '变量a的值为不知道';
}

PS:ifelse和switch同样可用于单条件判断,但ifelse适用于多条件判断而switch不适用。

$a = $_GET['a']; // 通过get传值后接值; 被判断的值
if(!empty($a) && $a=1){
  echo '变量a的值为1';
}elseif(!empty($a) && $a=2){
  echo '变量a的值为2';
}elseif(!empty($a) && $a=3){
  echo '变量a的值为3';
}else{
  echo '变量a的值为不知道';
}

Atas ialah kandungan terperinci php中if和switch的区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php中strtotime什么意思Artikel seterusnya:php值得学吗