如何比较当前年份的日期与数据库中的列

时间:2015-07-11 15:16:56

标签: php date compare

我尝试从数据库中获取数据取决于这种情况:

 if($now < "'.$current_year . '-09-15")

我必须显示上次学习的数据。 我想检查当前日期是否小于15.当前年份,以及是否显示来自数据库的研究会议数据。 但它没有显示正确的结果。 我的代码是:

&#13;
&#13;
<?php
 $date = new DateTime("now"); 
 $now=$date->format('Y-m-d');
 $current_year = $date->format('Y');
 $last_year =  $current_year -1;   


 if($now < "'.$current_year . '-09-15") {

      $this->db->where('student_surveys.created_at < "'.$current_year . '-09-15" AND student_surveys.created_at > "'.$last_year . '-09-15"');
 }
 else {
     
      $this->db->where('student_surveys.created_at > "'.$current_year . '-09-15"');
 }
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

在比较声明中形成您的日期时出现错误。当我尝试运行代码时,使用&#34; true&#34;打印在if部分和&#34; false&#34;在else中,它返回false(输出不正确)。 试试这个:

<?php
 $date = new DateTime("now"); 
 $now=$date->format('Y-m-d');
 $current_year = $date->format('Y');
 $last_year =  $current_year -1;   
 $yourdate = $current_year."-09-15";
 if($now < $yourdate) {         
      $this->db->where('student_surveys.created_at < "'.$current_year . '-09-15" AND student_surveys.created_at > "'.$last_year . '-09-15"');
 }
 else {     
      $this->db->where('student_surveys.created_at > "'.$current_year . '-09-15"');
 }
?>