PHP的preg_split成数组

时间:2018-10-28 09:05:24

标签: php regex split

我有以下代码:

$input = '2018-10-28T08:36:31.521Z';
$dateTime = preg_split('[T.]', $input);
echo ($dateTime[1]);

输出为:

  

08:36:31.521Z

带'T'的拆分有效,但不带'。' (重点)

我尝试过:

'[T\.]'

它也不起作用(它从未分解过)。

2 个答案:

答案 0 :(得分:2)

正则表达式应以特定字符开头和结尾。 我的建议始终是通过设置display_errors = 1和error_reporting(E_ALL);

$input = '2018-10-28T08:36:31.521Z';
$dateTime = preg_split('/[T.]/', $input);
echo ($dateTime[1]);

您的代码应该可以工作,您只是想念/正则表达式

答案 1 :(得分:1)

对于preg_split()函数,该模式必须用斜杠(或其他符合要求的字符)包围。例如:

 $input = '2018-10-28T08:36:31.521Z';
 $dateTime = preg_split('/[T.]/', $input);

 echo ($dateTime[1]);

输出:

  

08:36:31

但是对于日期时间操作,最好使用PHP DateTime对象。

希望有帮助。