php从当前日期减去过去日期,并以天为单位获得结果

php从当前日期减去过去日期,并以天为单位获得结果,php,date,datetime,Php,Date,Datetime,我正在寻找一种不那么复杂的方法来完成以下工作: $joinDate = "2014-05-26" $date = date('Ymd'); //todays date $memberFor = $joinDate - $date //This is where I need to get total number of days 是否有一个函数可以帮助我完成此操作?您应该使用DateTime对象来执行这些操作 $joinDate = "2014-05-26"; $joinDate_obj =

我正在寻找一种不那么复杂的方法来完成以下工作:

$joinDate = "2014-05-26"
$date = date('Ymd'); //todays date
$memberFor = $joinDate - $date //This is where I need to get total number of days

是否有一个函数可以帮助我完成此操作?

您应该使用DateTime对象来执行这些操作

$joinDate = "2014-05-26";

$joinDate_obj = new DateTime($joinDate);
$now = new DateTime();
$interval = $joinDate_obj->diff($now);

$diff = $interval->d ;

echo $diff; //12
对象
$interval
将具有

DateInterval Object (
  [y] => 0 
  [m] => 11 
  [d] => 12 
  [h] => 12 
  [i] => 49 
  [s] => 4 
  [weekday] => 0 
  [weekday_behavior] => 0 
  [first_last_day_of] => 0 
  [invert] => 0 
  [days] => 347 
  [special_type] => 0 
  [special_amount] => 0 
  [have_weekday_relative] => 0 [have_special_relative] => 0 
)
因此,您可以使用例如
$interval->days
来计算天数的差异。

这里有什么复杂的地方?在计算之前,您必须使用
strotime()
。结果会是什么,例如,如果差异超过50天?@Glavić$interval对象将拥有差异的所有数据,因此我想说,只需执行一个var_dump()并查看您所有的数据,然后使用它们(对于op),如果指定您查找两天之间的差异,请使用
$interval->days