你好,我是 Yii 新手。我将数据保存在保存创建日期的表中。但我得到了不同的日期格式,它是整数,如 "1462422044
"。我想将其更改为dd-mm-yyyy h:i:s
。 如何更改此日期格式?
我的Master.php
public function behaviors() {
return [
'timestamp' => [
'class' => TimestampBehavior::className(),
'attributes' => [
ActiveRecord::EVENT_BEFORE_INSERT => ['created_at', 'updated_at'],
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_at',
],
'value' => function() {
return time();
},
],
'user' => [
'class' => UserBehavior::className(),
'attributes' => [
ActiveRecord::EVENT_BEFORE_INSERT => ['created_by', 'updated_by'],
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_by',
],
'value' => function() {
return \Yii::$app->user->id == '' ? 0 : \Yii::$app->user->id;
},
],
];
}
我的common/models/product.php
public function behaviors() {
return [
BlameableBehavior::className(),
TimestampBehavior::className(),
];
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['parent_id', 'created_by', 'updated_by'], 'integer'],
[['category_name'], 'required'],
[['created_at', 'updated_at'], 'safe'],
[['category_name'], 'string', 'max' => 100],
];
}
最佳答案
如果数据库中的数据类型是日期时间,那么您必须将值转换为“Y-m-d H:i:s”格式,您可以这样做。 Created_at 字段表示您要存储当前日期和时间。所以尝试下面的代码希望它工作正常。这里我的模型变量是 $model 你需要用你的变量名称替换。如果您想存储当前日期时间,以下是一种方法。
$model->created_at= date('Y-m-d H:i:s');
这是转换变量的第二种方法。假设您将在 $currentDate
中获取值,那么您可以像下面的代码一样执行此操作。
$model->created_at= date('Y-m-d H:i:s',strtotime($currentDate));
关于php - 如何更改 Yii 中的日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37042332/