Symfony:奇怪的函数行为,序列化

时间:2011-05-18 17:29:58

标签: php symfony-1.4

我有这个保存功能,它会覆盖默认保存功能的行为:

class JobeetJob extends BaseJobeetJob {
    public function save(PropelPDO $con = null)
    {
        if($this->isNew() && !$this->getExpiresAt())
        {
            $now = $this->getCreatedAt() ? $this->getCreatedAt('U') : time();
            $this->setExpiresAt($now + 86400 * sfConfig::get('app_active_days'));
        }

        return parent::save($con);
    }
}

从书中拿出来。

我的错误是以下行的含义:

$now = $this->getCreatedAt() ? $this->getCreatedAt('U') : time();

如果'if'之前的isnew()检查,getCreatedAt怎么能返回true?这意味着它引用的对象将不会填充CreatedAt字段,因为它还没有在数据库中。

1 个答案:

答案 0 :(得分:1)

虽然created_at是自动设置的,但您也可以手动设置它 - 即使对象是新的。