使用带有ODBC的ms访问在PHP中格式化日期

时间:2014-06-21 05:56:33

标签: php ms-access odbc

我将我的ASP CLASSIC网站转换为PHP。该站点使用MS Access作为数据库并使用ODBC连接Databse。我坚持使用日期格式。

我曾经在asp中格式化日期,如下所示:

select U_ID, Trans_Code, Format(Due_Date, 'dd-mmm-yyyy') AS Due_Date

在PHP中使用相同的Format函数,但它返回错误。

  

警告:odbc_exec():SQL错误:[Microsoft] [ODBC Microsoft Access   驱动程序]别名引起的循环引用' Due_Date'在查询中   定义的SELECT列表。,SQLExecDirect中的SQL状态S1000   第28行的C:\ wamp \ www \ files.php

然后我将别名更改为DDATE错误消失,数据返回时没有格式化。

我也尝试过非sql方式,但它也会返回错误。

这是我使用的date_format函数。

echo "<td>". Date_Format($DueDate,"d.m.y") ."</td>\n";

返回此错误:

  

警告:date_format()期望参数1为DateTime,

还尝试了这个:

echo "<td>". Date_Format(DateTime($DueDate,"d.m.y")) ."</td>\n";

非常感谢任何帮助。 。 。 :)

1 个答案:

答案 0 :(得分:0)

我修正了错误:)

感谢S. Ahn的建议:

Assign the result from the query to a datetime object first, and then format it

首先创建日期时间对象

$DueDate=date_create(odbc_result($rs,"ddate"));

然后对其进行格式化。

echo "<td>". date_format($DueDate,"j-F-Y") ."</td>\n";