2011-03-01 103 views
2

我想从一个字段中输入日期的天数,例如21 jan 2011,但是当我使用count()时,它只会计算整个字符串,我如何计算日期?计算天数

+3

你的意思是让这一天在PHP或差的两个天? – 2011-03-01 04:49:20

回答

1

我推测你的日期正在使用日期对象[http://php.net/manual/en/function.date.php]。如果是这样,你可以使用这样的[http://www.developertutorials.com/tutorials/php/calculating-difference-between-dates-php-051018-1024/]来计算两个日期之间的差异。我想这就是你打算做的。

如果您尚未使用日期对象,则可以相当容易地将其转换为日期对象。上面链接的教程演示了如何使用爆炸函数将字符串转换为日期。

0
$date = "21 jan 2011"; 
$days = explode(" ", $date); 
$days = $days[0]; 
3

我建议你看看DateTime::diff()的方法。

例如

$date1 = new \DateTime('21 Jan 2011'); 
$date2 = new \DateTime('28 Feb 2011'); 

$diff = $date1->diff($date2); 

$days = $diff->d; 
+0

+1不知道它们现在有函数 – kjy112 2011-03-01 04:53:10

+0

(PHP 5> = 5.3.0) – NAVEED 2011-03-01 04:54:40

1

试试这个

echo date('d',strtotime('21 jan 2011')); 

看到这个功能更strtotime