国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php中switch語句的用法介紹

2024-05-04 23:07:04
字體:
來源:轉載
供稿:網友

本文章詳細的介紹了switch語句在php中用法,以及switch case在條件為0時的處理辦法,有需要了解的同學可以參考一下。

Switch 語句

如果您希望有選擇地執行若干代碼塊之一,請使用 Switch 語句。
使用 Switch 語句可以避免冗長的 if..elseif..else 代碼塊。語法:

  1. switch (expression)  
  2. {  
  3. case label1:  
  4.   code to be executed if expression = label1;  
  5.   break;    
  6. case label2:  
  7.   code to be executed if expression = label2;  
  8.   break;  
  9. default:  
  10.   code to be executed  
  11.   if expression is different   
  12.   from both label1 and label2;  

實例

工作原理:

對表達式(通常是變量)進行一次計算

把表達式的值與結構中 case 的值進行比較

如果存在匹配,則執行與 case 關聯的代碼

代碼執行后,break 語句阻止代碼跳入下一個 case 中繼續執行

如果沒有 case 為真,則使用 default 語句

  1. switch ($cps_sign) {  
  2.         case 'yiqifa':  
  3.         case 'chengguo':  
  4.         case 'roiyiqifa':  
  5.         case 'lkt':  
  6.         case 'fanli':  
  7.         case 'qqfanli':  
  8.         case 'weiyi':  
  9.         case 'yoyi':  
  10.             $sql = "INSERT into sa_cps_list (`uv`,`s_time`,`cps`,`url`) VALUES ('{$uv}',{$timestamp},'{$cps_sign}','{$url}')";  
  11.             echo $sql;exit();  
  12.             mysql_query($sql);  
  13.             break;  
  14.         default:  
  15.             break;  
  16.     }  

仔細看了一下程序,莫非是switch和case惹的禍?于是,寫DEMO檢測。

輸出結果為:bool(true) bool(false) xxx

  1. var_dump(""==0);      
  2. var_dump(""===0);  
  3. $errid = '';  
  4. switch ($errid) {  
  5.     case 0 :  
  6.         echo "xxx";  
  7.         break;  
  8.     default:  
  9.         echo "yyy";  
  10. }  

真相大白了,原來 switch/case結構中,比較case值用的是==而不是===。這樣,空就和0相等了,我收到的結果也當然就是錯誤的了。

沒辦法,程序不想改,畢竟多條件的時候switch/case要比一堆if讓人看著舒心。想辦法吧。呵呵。

  1. $result = '';  
  2. if(is_numeric($err_id) === false) {    
  3. $result .= '宕機或超時,沒有返回值';   
  4. return $result;  
  5. }  
  6. switch ($err_id) {  
  7.     case xxx :  
  8.         ..........  

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桑植县| 巴彦淖尔市| 天津市| 广东省| 英德市| 东明县| 道真| 平谷区| 会同县| 临桂县| 武夷山市| 北票市| 邵武市| 广西| 米脂县| 哈巴河县| 辽中县| 车致| 广州市| 邮箱| 新巴尔虎左旗| 霍城县| 岗巴县| 章丘市| 苏尼特右旗| 岳普湖县| 当雄县| 东方市| 伊宁市| 郓城县| 衡阳县| 麦盖提县| 天全县| 合肥市| 多伦县| 清远市| 吉林省| 齐河县| 留坝县| 富锦市| 上饶市|