PHP IF ELSE问题,无法得到正确的答案

时间:2014-10-28 11:21:54

标签: php scope

我为周末写了一个php函数,这个“ $ data ['projects'] ”不是空的,而是重定向到$end = date("Y-m-d", strtotime('next sunday'));

function weekendignSet(){
     if(!empty($data['projects'])){
         $end = $data['projects'][0]->week_end_day;
      }else{
         if(!empty($_GET['week_ending'])){
             $end = $_GET['week_ending'];
         }else{
             $end = date("Y-m-d", strtotime('next sunday'));
         }
      }
      return $end;
}

错误是什么?谢谢

3 个答案:

答案 0 :(得分:0)

你需要将$data传递给函数然后它会检入if()否则你总是进入其他状态尝试

function weekendignSet($data){

致电: -

weekendignSet($data);

答案 1 :(得分:0)

您的函数需要一个名为“$ data”的输入参数

答案 2 :(得分:0)

$data设为全局变量,或将其传递给函数:

global $data;
$data = array();
function weekendignSet(){
     global $data;
     if(!empty($data['projects'])){
         $end = $data['projects'][0]->week_end_day;
      }else{
         if(!empty($_GET['week_ending'])){
             $end = $_GET['week_ending'];
         }else{
             $end = date("Y-m-d", strtotime('next sunday'));
         }
      }
      return $end;
}

$data = array();
function weekendignSet($data){
     if(!empty($data['projects'])){
         $end = $data['projects'][0]->week_end_day;
      }else{
         if(!empty($_GET['week_ending'])){
             $end = $_GET['week_ending'];
         }else{
             $end = date("Y-m-d", strtotime('next sunday'));
         }
      }
      return $end;
}
weekendignSet($data);