我需要在PHP站点地图的日期格式。
我怎样才能做到这一点 ?
这是输出吗?
<lastmod>2012-08-02EEST18:01:18+03:00</lastmod>
我需要在PHP站点地图的日期格式。
我怎样才能做到这一点 ?
这是输出吗?
<lastmod>2012-08-02EEST18:01:18+03:00</lastmod>
如果您有时间戳可以正确格式的日期如下:
<lastmod><?php echo date('c', $timestamp); ?></lastmod>
时间戳可能是time()
当前时间)或取一个UNIX tiemstamp像其他一些方法strtotime()
格式化在W3C日期时间编码当前时间戳(如在sitemap.xml的文件中使用)使用下面的参数。
echo date('Y-m-dTH:i:sP', time());
随着PHP5的,你也可以使用C格式字符打印完全相同的字符串。
echo date('c',time());
这些举措既能打印出以下几点:
2009-04-03T11:49:00+01:00
资源
从MySQL的日期时间格式需要在站点地图中的lastmod的一个转换,只需使用下面的PHP代码。
$lastmod = '2012-11-28 10:53:17'; //MySQL datetime format
$datetime = new DateTime($lastmod);
$result = $datetime->format('Y-m-d\TH:i:sP');
echo $result; //2012-11-28T10:53:17+01:00
据谷歌 ,他的价值在于,如果提供,必须格式化为可选字段
YYYY-MM-DDThh:mmTZD
一个SQL日期时间的默认出口是依赖于语言设置为您的服务器 ,并可能包括空间和表征TZD如:
2014-09-19 10:33:05 UTC
在W3指定的是TZD可以在任何的三个选项进行格式化
TZD =时区指示符(Z或+ HH:MM或-hh:毫米)
从您的默认格式的空格都必须剥离; 字符“T”必须时间之前被插入,并且TZD必须匹配支持的类型之一。
因此格式化当前时间戳,使用下面的参数。
echo date('Y-m-dTH:i:sP', time());
随着PHP5的,你也可以使用C格式字符打印完全相同的字符串。
echo date('c',time());
你得到这个输出,因为你使用的老推荐时刻字符串
Y-m-dTH:i:sP.
但是,你需要的是
Y-m-d\TH:i:sP
这种单一的反斜杠将赚取差价。 在某些时候,一个大写字母T成为PHP时间码标志着一个特殊字符,所以如果你不逃的T你会得到什么您的报告。
我知道这个问题是关于PHP,但我发现这个页面google搜索节点/ JavaScript的。 所以最接近的等效Date.toISOString()
var d = new Date();
d.toISOString(); // "2017-04-19T07:23:16.040Z"
你有很多的格式可供选择 。 使用c
参数与date()
函数将获得的推荐格式为您服务。
删除“EES”我的是这样的2013-12-26T19:00:00-05:00和它的作品http://www.industry-automation-parts.com/1_e_0_sitemap.xml
与moment.js;
moment().format('YYY-MM-DDTHH:mm:ssZ')
事实上,有2种方法来此。
第一种方法是设置为XML网站地图有效日期其中包括“C”字符这给了值:(2019-06-03T17:30:21-05:00)。 这里测试一下
<lastmod>'.date('c', strtotime($row['date'])).'</lastmod>
的第二方法是设置为RSS站点地图有效日期其中包括“R”炭这给了值:(2019-03-07T17:55:44 + 00:00)。
<pubDate>'.date('r', strtotime($row['date'])).'</pubDate>
希望这可以帮助你。 谢谢