2013-04-26 92 views
1

我的脚本:时间转换返回null

$start = strtotime($color_date); 
$end = strtotime($accessory_date); 
$days_between = ceil(abs($end - $start)/86400); 

$days_between结果应该是一个整数,但它返回null

EDIT: 

$color_date="24/04/2013"; 
$accessory_date="26/04/2013"; 
+0

你可以给输入日期? – 2013-04-26 12:01:25

+0

做你的变量的'var_dump',看看它们是什么,你认为他们是。 – 2013-04-26 12:02:03

+0

请你添加你输入的日期格式都color_date和accessory_date? – liyakat 2013-04-26 12:10:46

回答

0

好吧,我得到了我的脚本来完成

   $datetime1 = DateTime::createFromFormat('d/m/Y', $color_date); 
       $color_date= $datetime1->format('Y-m-d'); 
       $datetime2 = DateTime::createFromFormat('d/m/Y', $accessory_date); 
       $accessory_date= $datetime2->format('Y-m-d'); 
       $start = strtotime($color_date); 
       $end = strtotime($accessory_date); 
       $days_between = ceil(abs($end - $start)/86400); 

只是转换我的日期从d/M/Y至年月日,因此问题就解决了

2

我想你不应该“创造你自己的轮子”时,有一个已经

你可能想看看DateTime::diff了两天之间的差异计算。从该页面 短的例子:

<?php 
$datetime1 = new DateTime('2009-10-11'); 
$datetime2 = new DateTime('2009-10-13'); 
$interval = $datetime1->diff($datetime2); 
echo $interval->format('%R%a days'); 
?> 
相关问题