学说2:在非对象上调用成员函数format() ...在 DateTimeType 中.php

2022-08-30 15:01:38

我有一个领域:DateTime

/**
 * Date time posted
 * @Column(type="datetime")
 */
private $dtPosted;

通过使用 LifeCycleCallback 将其设置为默认值

/**
 * @PrePersist
 */
function onPrePersist() {
    // set default date
    $this->dtPosted = date('Y-m-d H:m:s');

我收到以下错误:

致命错误:在第 46 行的 D:\ResourceLibrary\Frameworks\Doctrine\lib\Doctrine\DBAL\Types\DateTimeType.php中调用非对象上的成员函数 format()


答案 1

该函数返回一个字符串。该类型适用于对象。因此,要么将映射类型更改为对象,要么使用对象。date()datetimeDateTimestringDateTime


答案 2

您始终可以使用:

$this->updated = new \DateTime("now");

http://www.doctrine-project.org/docs/orm/2.0/en/cookbook/working-with-datetime.html


推荐