Php preg_split в массив

У меня такой код:

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

Результат:

08:36:31.521Z

сплит с «Т» работает, но не работает с «. (Смысл)

Я пытался:

'[T\.]'

он также не работает (никогда не разбивает его).

Как выглядит ожидаемый выходной массив?

Madhur Bhaiya 28.10.2018 10:06

Почему вы используете регулярные выражения для управления датой? Что ты пытаешься сделать, на самом деле?

iainn 28.10.2018 10:12

Возможный дубликат Преобразование одного формата даты в другой в PHP

iainn 28.10.2018 10:13

Я ожидаю получить: дату, затем время, мне не нужно '.521Z', я хочу получить ['', '', ''], затем я продолжаю использовать первый и второй столбцы

Slimane MEHARZI 28.10.2018 10:14
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
4
59
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Регулярное выражение должно начинаться и заканчиваться определенными символами. Мой совет всегда разрабатывать с настройками display_errors = 1 и error_reporting (E_ALL);

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

ваш код должен работать, вы просто пропустили / в регулярном выражении

Ответ принят как подходящий

Для функции preg_split() образец должен быть окружен косой чертой (или другим символом, который соответствует требованиям). Например :

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

 echo ($dateTime[1]);

Выход :

08:36:31

Но для управления датой и временем лучше использовать объект PHP DateTime.

Надеюсь, это поможет.

Другие вопросы по теме