版权声明:本文为博主原创文章,欢迎转载,转载时请以超链接形式标明文章原始出处。 https://blog.csdn.net/lilongsy/article/details/84878036
rules使用datetime
平常数据库使用datetime
这种数据格式,一般也在model
的rules
里也定义好:
public function rules()
{
return [
[['create_at'], 'datetime']
];
}
那表单提交后怎么转换为这种格式呢?一般使用Yii2的formatter
,在配置文件中添加这样的代码:
配置formatter
return [
'components'=>[
'formatter'=>[
'defaultTimeZone'=>'Asia/Shanghai',
'dateFormat'=>'yyyy-MM-dd',
'timeFormat'=>'HH:mm:ss',
'datetimeFormat'=>'yyyy-MM-dd HH:mm:ss'
]
]
]
这样就配置好formatter
了。
使用formatter转换为datetime
现在模型就可以使用默认格式化的datetime
了。
$model = new Article();
// 转换为配置文件里datetimeFormat的格式
$model->create_at = Yii::$app->formatter->asDatetime('now');
参考:https://www.yiiframework.com/doc/guide/2.0/en/output-formatting