我正在尝试将当前日期转换为以下格式:
的例子: 2015年10月21日星期三下午13:04
就像gmail。
我在网上搜索了很多,但没有帮助。我还研究了以下链接,http://php.net/manual/en/datetime.formats.date.php
但仍然无法解决我的问题。
请帮我解决这个问题。
可以使用日期和时间格式。不太为人所知的是D表示一周中的缩写日,M表示缩写月,j表示不带前导0的天数。对于时间格式,您可以使用g,它是12小时时间,不带前导零,大写的子午线前和子午线后表示A。date()
函数的文档页列出了各种字母及其含义。
您需要通过为每个at
添加反斜杠来转义它们。或者您可以选择分两步格式化:
echo date( 'D, M j, Y') . ' at ' . date('g:i A');
指定时间戳:
$timestamp = time();
echo date( 'D, M j, Y', $timestamp) . ' at ' . date('g:i A', $timestamp);
使用转义并转换成函数:
function gmail_date($timestamp = null) {
// Allow passing no time, just like date() does.
if ($timestamp === null) $timestamp = time();
return date( 'D, M j, Y at g:i A', $timestamp);
}
echo gmail_date(time());
try this:
<?php
date_default_timezone_set('America/Los_Angeles');
$time = strtotime(Date('Y-m-d H:i:s'));
$month=date("F",$time);
$year=date("Y",$time);
$day=date("d",$time);
$hour=date("H",$time);
$minute=date("i",$time);
$x=date("A",$time);
$final=substr(date("l"),0,3).", ".substr($month,0,3)." ".$day.", ".$year." at ".$hour.":".$minute." ".$x;
echo $final;
?>
您将得到所需的输出。:)
查看PHP Date函数的格式设置技巧
echo date('D, M j, Y at g:i a ', strtotime('+2 weeks 1 hour'));
return 2015年11月4日星期三下午5:14 这看起来很合法。