jbl*_*lue 4 php orm propel doctrine zend-framework
我的查询返回一个具有日期字段的对象
$obj = ObjectQuery::create()->findPK(11);
Run Code Online (Sandbox Code Playgroud)
var_dump($obj)向我显示日期字段,yyyy-mm-dd就像它在数据库中一样$obj->getThedate();改变mm/dd/yy我不想发生的格式$obj->getThedate("Y-m-d"); 在数据库中给我相同的格式 yyyy-mm-dd因此,为了使数据以相同的格式存储在数据库中,我需要在获取特定日期字段时设置格式,如第三行.
问题是我没有单独阅读日期字段.我将整个$ obj作为一个整体并使用Zend将其转换为数组toArray(),因此我无法控制如何toArray()读取日期字段.有没有办法将Propel设置("Y-m-d")为默认格式?可能在prople配置设置中有什么东西?
Propel用于临时列的默认格式可以通过三个构建配置参数进行配置:
propel.defaultTimeStampFormat = {Y-m-d H:i:s}|string
propel.defaultTimeFormat = {%X}|string
propel.defaultDateFormat = {%x}|string
Run Code Online (Sandbox Code Playgroud)
如您所见,日期的默认格式是%x,这是基于您的语言环境的首选日期表示.你应该把它改成%Y-%m-%d或简写%F.