我有只包含时间数据库字段,它在我的移民为被声明
$table->time('time')->default('00:00:00');
现在我想的秒数添加到使用口若悬河,做这样的事情领域:
$activetime->time->add(new DateInterval('PT5S'));
(其中$ activetime是锋模型的对象)
第一次尝试在此我
Call to a member function add() on string
所以,很显然我必须告诉能言善辩,这不是一个字符串,但一段时间。我已经得到的最接近是将它放在保护$日期在模型中,但后来反而我得到
Unexpected data found.
我怀疑这是因为它是不是一个真正的日期,但只有一段时间,但我似乎无法找到如何处理次多的信息。有没有解决这个任何方式或我会用别的东西,比如日期时间或时间戳(或者甚至几秒钟量的整数)会更好?我做什么,想记录的活动时间对于一个给定日期的用户量,因此对于该目的时间似乎是自然的选择...
这是因为Laravel读取time
数据库类型只是一个string
和你期待一个DateTime Object
。
添加到您的雄辩型号:
public function getTimeAttribute($value)
{
return new \DateTime($value);
}
您也可以投你time
使用DateTime Object
到Laravel Attribute Casting,但你必须要追加一些日期到你的时间,因为Laravel期待正确的格式