PHP错误地显示日期

时间:2015-02-17 20:19:46

标签: php oracle datetime

作为最近升级到Apache2.2 / PHP 5.5.20(来自Apache 1.3 / PHP 5.3)的一部分,我发现了以下问题:

每当PHP尝试从Oracle检索Date数据类型时,结果将被解析为字符串,并从中删除YYYY-MM-DD部分:

$tempQuery = "SELECT SYSDATE FROM DUAL";
$tempStatement = oci_parse($this->conn, $tempQuery);
$tempSuccess = oci_execute($tempStatement);
oci_fetch_all($tempStatement, $tempData);
echo "<h3>var_dump(\$tempData) :" . var_dump($tempData)  . "</h3>";

的var_dump($ TempData的)

我们得到:

array(1) { 
  ["SYSDATE"]=> array(1) { 
    [0]=> string(8) "20:02:20" 
  } 
}

我们使用的是PHP 5.5.20,Apache 2.2,Oracle Server 11i,Oracle Client 9,SUSE Linux 11 SP2

我意识到解决此问题的最佳方法是在PL / SQL中格式化日期,但这是不可能的,因为这是遗留功能。毋庸置疑,这在升级之前工作正常。

有什么想法吗?

0 个答案:

没有答案