Laravel 4在数据库中保存日期

时间:2014-03-12 21:51:47

标签: php date laravel-4 save eloquent

我想用laravel 4保存日期,我一直在互联网上寻找,但我找到的唯一好方法是使用

$start_at = date("Y-m-d", strtotime($start_at));

但我确信这是Isaac Newton xd使用的一种古老的代码,如果我想要检索它,我需要再次使用。 在手册中,我发现"变量受保护$ dates = array(' My_date',' Another_date');"或使用"公共函数getDates()",http://laravel.com/docs/eloquent#date-mutators我甚至更改了文件Model.php,但我一直有这个错误"发现了意外的数据。发现意外数据。数据缺失"

class Insurance extends Eloquent {
    protected $table = 'insurance';
    protected $dates = array('start_at', 'end_at');
    public $timestamps = false;
    protected $primaryKey = 'id_insurance';
    protected $fillable = array (
            'id_vehicle',
            'start_at',
            'end_at' 
    );

    public function getDates()
    {
        return array('start_at', 'end_at');
    }
}

1 个答案:

答案 0 :(得分:1)

我建议将Carbon库用于PHP。

将数据库中的列类型设置为日期。 (mySql允许)。

如果您的表单包含提供日期的单独部分的输入,例如年,月和日期,则可以创建要插入的输入

Carbon::createFromDate(      
 $dateOfBirth['year'],      
 $dateOfBirth['month'],
 $dateOfBirth['date'])->toDateString();

这可以插入您雄辩的模型中。