php preg_拆分为数组

php preg_拆分为数组,php,regex,split,Php,Regex,Split,我有以下代码: $input = '2018-10-28T08:36:31.521Z'; $dateTime = preg_split('[T.]', $input); echo ($dateTime[1]); 输出为: 08:36:31.521Z 带“T”的拆分有效,但不带“.”(重点) 我试过: '[T\.]' 它也不起作用(它永远不会拆分它)。正则表达式应该以特定字符开始和结束。 我的建议是始终使用设置display_errors=1和error_reporting(E_ALL)进行开

我有以下代码:

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

08:36:31.521Z

带“T”的拆分有效,但不带“.”(重点)

我试过:

'[T\.]'

它也不起作用(它永远不会拆分它)。

正则表达式应该以特定字符开始和结束。 我的建议是始终使用设置display_errors=1和error_reporting(E_ALL)进行开发


您的代码应该可以工作,您刚刚错过了/在正则表达式中

正则表达式应该以特定字符开始和结束。 我的建议是始终使用设置display_errors=1和error_reporting(E_ALL)进行开发

您的代码应该可以工作,您刚刚错过了/在正则表达式中

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

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

 echo ($dateTime[1]);
输出:

08:36:31

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

希望能有帮助

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

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

 echo ($dateTime[1]);
输出:

08:36:31

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


希望能有帮助

预期的输出数组是什么样子的?为什么要使用正则表达式来处理日期?你到底想做什么?我希望得到的可能是重复的:日期,然后是时间,我不需要“.521Z”,我希望得到[“”,“”,“”),然后我继续使用第一个和第二个列。预期的输出数组是什么样子的?你为什么要用正则表达式来处理日期?你到底想做什么?我希望得到的可能是重复的:日期,然后是时间,我不需要“.521Z”,我希望得到[“”,“,”),然后我继续使用第一个和第二个列