1. 程式人生 > 其它 >switch case return return 返回不了值的原因

switch case return return 返回不了值的原因

我在頁面寫了一個ajax ,但是控制器 是 用switch case break 控制的控制器 ,

我想 在case login 方法裡 直接 return , 但是不好使 始終是 null ,

switch($act) {
// 登入方法
case 'login':
$result = json_encode(array(1,'登入成功'));
return $result;
}

ajax success 始終是收不到值的 (如上程式碼);

要是 在一個控制器中 是可以收到值的 (如下程式碼)

function login (){

  $result = '';

switch($act) {
// 登入方法
case 'login':
$result = json_encode(array(1,'登入成功'));
  //返回值不寫在這
  //return $result;
}
  //在這是可以獲取到的
  return $result;

}

個人總結:1.break 和return 都是 結束 switch 流程 但是 return 是直接結束 不繼續往下執行 , break 是會繼續往下執行,

     2.return 在 switch 裡寫是沒有返回值的,在switch 外 return 是有返回值的,如果有不對請給出指正,謝謝!