【问题标题】:PHP IF ELSE issue, can not get correct answersPHP IF ELSE 问题,无法得到正确答案
【发布时间】:2014-10-28 11:21:54
【问题描述】:

我为get周末写了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;
}

什么是错误?谢谢

【问题讨论】:

  • 尝试使用if(!isset($data['projects']))并告诉我们进展如何
  • @AresDraguna !empty 将自动检查该值是否已设置。
  • $data 不在范围内,将始终为空。
  • @AresDraguna 不工作
  • @Fluffeh !isset 将检查projects 是否实际设置... !empty 只是检查projects 中是否有值

标签: php scope


【解决方案1】:

您需要传递$data 才能运行,然后它将检查 if() 否则您总是进入 else 条件尝试

function weekendignSet($data){

打电话时:-

weekendignSet($data);

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      $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);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-11-14
        • 1970-01-01
        • 2020-05-24
        • 1970-01-01
        • 2019-05-02
        • 1970-01-01
        • 1970-01-01
        • 2012-02-21
        相关资源
        最近更新 更多