比较日期php / phpExcel

时间:2015-09-09 08:17:28

标签: php datetime phpexcel

我从excel文件中获取日期值,并将其更改为日期,如此

$dateEx = $sheet->getCellByColumnAndRow(2,$line)->getValue();      
$date = date('Ymd',($dateEx - 25569)*24*60*60);

我还有另外两个从String转换为日期的日期时间

  $dateOuverture = '20150306';
  $dateFerm = '20150906';              

  $dateOuverture = new Datetime($dateOuverture);
  $dateOuverture = $dateOuverture->format('Ymd'); 


  $dateFerm = new Datetime($dateFerm);
  $dateFerm = $dateFerm->format('Ymd'); 

当我想比较日期时,如果它不起作用

if($date<=$dateFerm && $date>=$dateOuverture){
     echo "Im in the if";

}

我错了什么?

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

PHP日期函数接受时间戳作为第二个参数,没有ISO8601日期格式。 Strtotime确实接受了这一点,并返回一个有效的时间戳。将这两者结合起来:

$dateEx = $sheet->getCellByColumnAndRow(2,$line)->getValue();
$iso8601Date = ($dateEx - 25569)*24*60*60;    
$date = new DateTime($iso8601Date);

有关日期格式的详情,请参阅this链接

比较DateTime对象

$dateOuverture = '20150306';
$dateFerm = '20150906';

$dateOuverture = new Datetime($dateOuverture);
$dateFerm = new Datetime($dateFerm);

if($date<=$dateFerm && $date>=$dateOuverture){
    echo "Im in the if";
}