代码点火器 获得两个日期的差异



我需要获取两个日期的差异并更新数据库中日期的差异。

public function approve($id, $leave_type, $leave_start, $leave_end) 
{   
$diffDays= abs($leave_end - $leave_start);  
$this->db->set('leave_days', $diffDays);
$this->db->set('status', Approved);
$this->db->where('id', $id);
$this->db->update('leave');
return $this->db->affected_rows() > 0;  
}

abs($leave_end - $leave_start(; 不工作。但是当硬编码值设置为 diffDays 时,它可以正常工作。

将日期格式调整为您正在使用的格式。

$leave_start = DateTime::createFromFormat('Y-m-d', $leave_start);
$leave_end = DateTime::createFromFormat('Y-m-d', $leave_end);
$diffDays = $leave_end->diff($leave_start)->format("%a");
$this->db->where('id', $id);
$this->db->update('leave', array('leave_days' => $diffDays));
Please try this for getting a difference between two dates.

$date1=date_create($leave_start);
$date2=date_create($leave_end);
$diff=date_diff($date1,$date2);
$days=$diff->format("%a");

$id = 1;
$this->db->set('leave_days', $days);
$this->db->where('id', $id);
$this->db->update('leave');

$leave_start = '01-01-2018'; $leave_end = '10-01-2018';

$id = 1;
$diffDays = abs($leave_end - $leave_start);     
$this->db->set('leave_days', $diffDays);
$this->db->where('id', $id);
$this->db->update('leave');

确保你的$diffDays有一些价值,因为它对我有用。

相关内容

  • 没有找到相关文章

最新更新