使用Php和Oracle显示日期时间。时间不合格?

时间:2013-12-31 08:00:34

标签: php oracle plsql

我有一个小问题。我正在将PHP与Oracle一起使用(顺便说一下,这是Oracle的新功能)。

在我的数据库中有一个名为NEXT_START_DATE的DATE字段,其值为

  

25.12.2013 04:05:01

如下所示。

Database Record

问题是我可以在我的网页上获得日期值,但看不到任何时间,如果你能看到下图,它只会返回25/12/2013。

enter image description here

我知道人们建议使用像

这样的pl / sql函数
  

to_date()

  

to_char()

但这可能只使用php吗?我真的不能干涉SQL。任何帮助都会很棒,提前谢谢。

2 个答案:

答案 0 :(得分:1)

ADOdb中,请务必在连接前设置格式:

$db = ADONewConnection("oci8");
// $db->debug = true;

// Date format is set before connecting.
$db->NLS_DATE_FORMAT = 'DD.MM.YYYY HH24:MI:SS';

礼貌: http://board.issociate.de/thread/192412/OCI_ignoring_NLS_DATE_FORMAT_parameter.html

答案 1 :(得分:1)

您也可以在查询中使用SQL函数。

例如,

SELECT TO_CHAR(next_start_date, 'YYYY-MM-DD HH24:MI:SS') FROM mytable

您将获得指定格式的日期。

正如@Maheswaran Ravisankar指出的,还有NLS_DATE_FORMAT,但是如果你设置它,那个格式用于所有查询(没有指定to_char)。我总是在所有select中使用to_char,因为它允许我为每个查询指定一个单独的格式。