我正在尝试将当前日期转换为以下格式:
实施例: 2015年10月21日星期三下午13:04
就像gmail一样。
我在互联网上搜索了很多,但没有任何帮助。我还研究了以下链接, http://php.net/manual/en/datetime.formats.date.php
但仍然无法解决我的问题。
请帮我解决这个问题。
答案 0 :(得分:2)
您可以使用日期和时间格式化程序。鲜为人知的是D表示一周中的缩写日期,M表示缩写的月份,j表示没有前导0的日期编号。对于时间格式,您可以使用g,即12小时时间不带前导零和A表示大写Ante meridiem和发布meridiem指示。各种字母及其含义列于documentation page of the date()
function。
您需要通过为每个字符添加反斜杠来转义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);
使用转义和poored成函数:
function gmail_date($timestamp = null) {
// Allow passing no time, just like date() does.
if ($timestamp === null) $timestamp = time();
return date( 'D, M j, Y \a\t g:i A', $timestamp);
}
echo gmail_date(time());
答案 1 :(得分:1)
试试这个:
<?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;
?>
您将获得所需的输出。 :)
答案 2 :(得分:1)
查看PHP Date函数以获取格式提示。
echo date('D, M j, Y \a\t g:i A', strtotime('+2 weeks 1 hour'));
返回 2015年11月4日星期三下午5:14 ,看起来非常合法。