我有以下代码:
$input = '2018-10-28T08:36:31.521Z';
$dateTime = preg_split('[T.]', $input);
echo ($dateTime[1]);
输出为:
08:36:31.521Z
带'T'的拆分有效,但不带'。' (重点)
我尝试过:
'[T\.]'
它也不起作用(它从未分解过)。
答案 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对象。
希望有帮助。