文字

gmstrftime

(PHP 4, PHP 5, PHP 7)

gmstrftime 根据区域设置格式化 GMT/UTC 时间/日期

说明

string gmstrftime ( string $format [, int $timestamp ] )

strftime() 的行为相同,只除了返回时间是格林威治标准时(GMT)。例如,当在东部标准时(EST,GMT -500)运行时,下面第一行显示“Dec 31 1998 20:00:00”,而第二行显示“Jan 01 1999 01:00:00”。

Example #1 gmstrftime() 例子

<?php
setlocale
( LC_TIME 'en_US' );
echo 
strftime ( "%b %d %Y %H:%M:%S" mktime  ( 20 , 0 , 0 , 12 , 31 , 98 )). "\n" ;
echo 
gmstrftime ( "%b %d %Y %H:%M:%S" mktime  ( 20 , 0 , 0 , 12 , 31 , 98 )). "\n" ;
?>

参见 strftime()

用户评论:

[#1] pvdster at hotmail dot com [2005-03-22 07:50:13]

If you want the dutch time on your pages and you are hosted on a server in the USA you can easily change it this way:

<?php
setlocale
(LC_TIME'nl_NL');
$tgl gmstrftime("%d %B %Y - %H:%M uur",time()+3600);
?>


Then use $tgl to display the right time.
Note the +3600 is a day light savings time correction.
The result: 22 maart 2005 - 16:39 uur

First I used the normal date function and this was the previous result: March 22, 2005 - 04:28 AM

I needed it for a dutch guestbook.

I'm new to PHP and it took me a while to find it out and maybe it's of no use for experienced PHP programmers but I thought people can always ignore my post :)

[#2] peter dot albertsson at spray dot se [2005-02-05 07:27:17]

gmstrftime() should not be used to generate a RFC 850 date for use in HTTP headers, since its output is affected by setlocale().

Use gmdate instead:

gmdate('D, d M Y H:i:s') . ' GMT';

[#3] yellow dot snow at huskies dot com [2004-10-10 09:15:34]

HTTP 1.1 (RFC 2068) requires an RFC 1123 date with a four digit year, so the correct format to use for a Last-modified header would look something like this:

<?php
header
("Last-modified: " 
gmstrftime("%a, %d %b %Y %T %Z",getlastmod()));
?>

[#4] neo at gothic-chat d0t de [2004-06-24 23:27:15]

To get a RFC 850 date (used in HTTP) of the current time:

gmstrftime ("%A %d-%b-%y %T %Z", time ());

This will get for example:
Friday 25-Jun-04 03:30:23 GMT

Please note that times in HTTP-headers _must_ be GMT, so use gmstrftime() instead of strftime().

上一篇: 下一篇: