【发布时间】:2017-08-14 09:30:38
【问题描述】:
我有一个从 oracle 数据库中获取日期时间的实体。在某些情况下(实际上很多时候,我无法影响)它们是 2099 年 12 月 31 日。 这在 Symfony 中返回为 31-Dec-1999。
我该如何解决?有没有办法扩展 PHP Datetime ?或者扩展 Doctrine datetime 类型?
也许有一种平滑的方法可以使用 twig 过滤器检查日期并在其
DateTime {#989 ▼
+"date": "1999-12-31 00:00:00.000000"
+"timezone_type": 3
+"timezone": "Europe/Berlin"
}
我知道我可以使用 to_char() 手动获取它,但这不是一个选项。
一些信息:
- PHP 7.1.0
- Symfony 3.2.6
- 树枝
- Oracle 12g
提前致谢,对任何语言错误深表歉意,我不是母语人士 :-)
编辑:
这是我的 Enitiy 字段的日期
/**
* @ORM\Column(name="VALIDTO" , type="datetime")
*/
protected $validTo;
编辑 2: 我的服务器是 Linux 主机名 3.10.0-229.14.1.el7.x86_64 #1 SMP Tue Sep 15 15:05:51 UTC 2015 x86_64
我的 php 正在使用所有的 lib64 文件,它应该是 64 位 :-)
【问题讨论】:
-
检查从 Oracle 返回的日期格式。通常它会类似于
DD-MON-RR(例如31-DEC-99),PHP 会将其解释为 1999,而不是 2099。 -
感谢您的回答,我该如何检查?查询是由学说完成的,我看不到原始输出:-(
标签: php oracle symfony datetime doctrine-orm