PHP: способы убрать информацию о времени и дате? - PullRequest
0 голосов
/ 10 января 2020

Моя PHP / Laravel программа собирает даты времени из конечной точки API в переменную, которую я назову $ time. Он представлен в следующем формате:

2018-12-10T22:14:04Z

Я хочу привести его в порядок, например, в любой из следующих вариантов:

"10-12-2018" "22:14, 10-12-2018" "10-12-2018, 22:14:04"

Я новичок в этом аспекте PHP, поэтому я искал разные способы сделать это. Пока я сталкивался с некоторыми вопросами, похожими на мои , и я нашел документацию для таких инструментов, как createfromformat и strtotime , но из того, что я читай, я не думаю, что они определяют точный формат, с которым я работаю.

Есть ли в PHP какие-нибудь встроенные способы, которыми я могу это сделать? Или какие-то строки кода люди могут предложить мне переформатировать дату, как я хочу? Любая помощь по этому вопросу будет принята с благодарностью

Ответы [ 2 ]

3 голосов
/ 10 января 2020

Вы можете передать сохраненную строку даты и времени в DateTime () объект и свободно контролировать его формат (и более) . Например:

$time = '2018-12-10T22:14:04Z';

$dateTimeObject = new \DateTime($time);
echo $dateTimeObject->format('Y-m-d H:i:s'); // will output: 2018-12-10 22:14:04
2 голосов
/ 10 января 2020

Я бы посоветовал вам использовать пакет Carbon для преобразования дат и даты и времени. Это действительно потрясающе.

Обычно Laravel уже содержит Carbon, но если у вас почему-то его нет, установите его с помощью этого:

composer require nesbot/carbon

Теперь вам нужно импортировать, например, если вы хотите использовать его в своем контроллере:

use Carbon\Carbon;

И вы должны быть в состоянии сделать что-то вроде этого:

Carbon::createFromFormat('d/m/Y', $yourcurrentformat);

Вы должны прочитать документы

...