这是关于Symfony 1.4,可能是所有以前的版本,运行php 5.3,mysql 5.1。
如果我将旧日期存储在数据库中< 1970 ......,然后我检索它们,它们会自动转换为错误的日期。
示例表:
id, some_date
1, 1961-09-09
一个简单的例子。
$record = MyTablePeer::retrieveByPK(1);
echo $record->getSomeDate();
//returns: 09/09/61
//Want it to return: 1961-09-09
输出格式在哪里受到控制?我需要将整个年份的整个日期存储在数据库中。
答案 0 :(得分:4)
日期字段获取者使用$format
参数,使用该参数,例如$record->getSomeDate("Y-m-d");
。
此外,这是docblock关于日期访问者的说法:
此访问器仅适用于unix 纪元日期。考虑建设 propel.useDateTimeClass或更改此 列类型为(不建议使用) “before-unix”列类型(例如 BU_TIMESTAMP或BU_DATE)如果需要 支持之前/之后的日期。
@param string $format The date/time format string (either date()-style or strftime()-style).
If format is NULL, then the integer unix timestamp will be returned.
@return mixed Formatted date/time value as string or (integer) unix timestamp (if format is NULL).
@throws PropelException - if unable to convert the date/time to timestamp.