我正在尝试检查datetime
字段是否为空或null
:
if (!$entity->getDate()) {
在数据库字段中,值为null
,但此条件失败,当我转储此日期时,我得到:
object(DateTime)#1790 (3) {
["date"]=>
string(27) "-0001-11-30 00:00:00.000000"
["timezone_type"]=>
int(3)
["timezone"]=>
string(3) "UTC"
}
实体的财产:
/**
* @var \Datetime
*
* @ORM\Column(name="start_date", type="datetime", nullable=true)
*/
private $date;
为什么将字段woth null值转换为DateTime
对象的任何想法?如何检查数据库中的datetime
字段是否不是null
?
答案 0 :(得分:0)
我认为你的字段包含:
0000-00-00 00:00:00
并且不为null,可能是为您的日期列设置了此默认值。
$date = new \DateTime('0000-00-00 00:00:00');
dump($date);
DateTime {#1336 ▼
+"date": "-0001-11-30 00:00:00"
+"timezone_type": 3
+"timezone": "Europe/Paris"
}