yii2中的格式化程序asDateTime
如果我有这样一个元素数组:yii2中的格式化程序asDateTime,yii2,Yii2,如果我有这样一个元素数组: [PERKIRAAN_SELESAI] => 24/10/2016 09:38 然后我想在mysql中存储为datetime格式,即YYYY-MM-DD H:s, =>2016-10-2409:38 Yii2如何处理这个问题, 现在,在beforeSave()中,我使用以下命令: $this->perkiraan_selesai = Yii::$app->formatter->asDateTime(strtorime($this->P
[PERKIRAAN_SELESAI] => 24/10/2016 09:38
然后我想在mysql中存储为datetime格式,即YYYY-MM-DD H:s,
=>2016-10-2409:38
Yii2如何处理这个问题,
现在,在beforeSave()中,我使用以下命令:
$this->perkiraan_selesai = Yii::$app->formatter->asDateTime(strtorime($this->PERKIRAAN_SELESAI), "php:Y-m-d H:s" );
但是,仍然不起作用。
请。首先,我看到您的代码中有两个错误:
日期看起来像是2016-10-24 09:38
格式,而不是Y-m-d H:i
。检查PHP函数文档以了解这些字母的解释Y-m-d H:s
必须是strotime
,但我认为这个打字错误不是在原始代码中,只是在这里发布的strotime
/
)。我没有手动用-
替换它,而是用原生类DateTime
找到了更好的解决方案
使用普通PHP:
$date = \DateTime::createFromFormat('d/m/Y H:i', '24/10/2016 09:38')->format('Y-m-d H:i');
使用Yii2格式化程序:
$date = Yii::$app->formatter->asDateTime(\DateTime::createFromFormat('d/m/Y H:i', '24/10/2016 09:38'), 'php:Y-m-d H:i');
用你的价值替换这个日期
$date
的值与预期一致