2009-11-17 47 views
0

我试图采取时间戳格式为:正则表达式在PHP时间戳

2009-11-16T14:05:22-08:00

,并把它们变成像

2009-11-16

如何在“T”后删除所有内容?

回答

1

你可以使用explode()

list($date) = explode('T', '2009-11-16T14:05:22-08:00'); 

$date现在是'2009-11-16'

3

假设他们都在该格式,最简单的方法是:

$result = substr($timestamp,0,10); 

其中timestamp是你的起始时间戳记和结果是修改后的时间戳。

+0

+1为了简单 – 2009-11-17 00:53:58

+0

我认为,但是那会不会是一个问题如果我们是在一个月的一个月内或在本月的前几天?难道不会把它搞砸吗? – 2009-11-17 01:00:17

+0

一个数字的月份和日期可能会有前导零,例如您的示例中'14:05:22'中的'05'。 – 2009-11-17 01:10:46

6

也许这个作品:

date('Y-m-d', strtotime('2009-11-16T14:05:22-08:00')); 
1

由于OP标记它作为一个PHP和正则表达式的问题,我会给他一个PHP和正则表达式的答案:

$result = preg_replace("/T.*/", "", $timestamp); 
+0

+1来坚持这个问题 – 2009-11-17 18:41:43