2010-11-17 94 views
1

我在我们的网页上设置了PHP的if-modified-since标题。我可以检测一个php文件是否已经保存,然后使用PHP的filetime()和date()函数正确设置标题。不过,我还需要在php页面显示的数据库中的信息发生变化时正确设置标题。将MySQL日期时间转换为RFC 2822使用PHP日期()函数

对于文件被改变了我使用PHP的date()函数像这样:

date("r", $file_mod) 

然而,当我使用它是我从查询MySQL的日期时间字段搞定,我总是得到以下响应,其中日期,时间,年份和月份是错误的:

Wed, 31 Dec 1969 18:33:30 -0600 

什么是从MySQL的日期时间转换为RFC 2822的正确方法,或者至少我怎么转换成格式付诸PHP的date()函数得到正确的回应?

+2

MySQL不会使用它的任何时态数据类型来存储时区,它的[日期格式支持占位符也不会列出它](http://dev.mysql.com/doc/refman/5.1/en/date -and-时间functions.html#function_date格式)。 – 2010-11-17 18:09:19

回答

3
SELECT DATE_FORMAT(exampledate,'%a, %d %b %Y %T') // given a MySQL datetime 

date('r') // for PHP 
-1

strtotime将做的工作

如果你不介意的话,我想看看你的“如果 - 修改 - 自”执行。我需要在我的某个网站上执行此操作。

1

你可能会考虑在你的查询中使用MySQL的date_format函数。这样日期将以正确的格式到达。