php - Yii 时间戳是如何工作的?

标签 php yii yii2

Yii 表示它可以自动设置时间戳“created_at”:http://www.yiiframework.com/doc-2.0/guide-concept-behaviors.html#using-timestampbehavior

但是,每次创建记录时,时间都是空白:

$ yii kw/test
1437683634

mysql> select * from ad_group_keyword_network where ad_group_keyword_id = 1;
+---------------------+-
| created_at          | 
+---------------------+-
| 0000-00-00 00:00:00 | 
| 0000-00-00 00:00:00 | 
+---------------------+-

  public function actionTest() {
    $agkn = new AdGroupKeywordNetwork();
    $agkn->save();
    echo $agkn->created_at;

我尝试使用 Schema::TYPE_TIMESTAMP 并更改了字段,并尝试使用 Schema::TYPE_DATETIME。保存后,它们都在字段中返回整数时间戳,但数据库中的时间全为0。

public function behaviors()
{
    return [
        [
            'class' => TimestampBehavior::className(),
            'attributes' => [
                ActiveRecord::EVENT_BEFORE_INSERT => ['created_at'],
                ActiveRecord::EVENT_BEFORE_UPDATE => [],

最佳答案

您的 created_at 类型必须为 INT (11) 才能使 Yii 2 时间戳行为工作。我认为您使用的 TIMESTAMP 类型不起作用。

关于php - Yii 时间戳是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31597702/

相关文章:

php - 有没有办法在没有 WHERE 子句的情况下加快此查询的速度?

php - 用 C++ 扩展 PHP?

php - 如何限制用户访问 YII 框架中的个人资料信息

javascript - 使用 ActiveForm 在 yii2 中的电子邮件和密码字段中自动完成关闭

php - 如何获取 img 标签的 src 属性?

php - 安装错误 : Please change the value of 'Security.salt' in app/config/core. php 到特定于您的应用程序的盐值

php - 如何检查事件日期是否与现有事件不重叠

php - Yii2:使用 Swiftmailer 插件 (Openbuildings\Swiftmailer\CssInlinerPlugin)

yii2 - 使用 Yii2 ActiveRecord 在 SELECT 中进行子查询

Yii2 验证码图像不显示