Подтвердить что ты не робот

Устаревший: функция split() устарела. Как переписать это выражение?

У меня есть следующий оператор, который отлично работал перед PHP 5.3 с помощью split function:

list($year, $month, $day, $hour, $min, $sec) = split( '[: -]', $post_timestamp );

После обновления до PHP 5.3 я получаю предупреждение:

Устарело: функция split() устарела.

Я пытаюсь разобрать строку с таким форматом, как:

2010-08-10 23:07:58

в его составные части.

4b9b3361

Ответ 1

Я думаю, вы хотите preg_split.

list($year, $month, $day, $hour, $min, $sec) = preg_split('/[: -]/', $post_timestamp);

Ответ 2

$dateTime = new DateTime('2010-08-10 23:07:58');

$year = $dateTime->format('Y');
$month = $dateTime->format('m');

Вы получите упражнение... В зависимости от того, что вы собираетесь с ним делать, использование объекта DateTime может быть более удобным, чем использование шести отдельных переменных.

Ответ 3

Просто попробуйте заменить "split" на "explode", а новая версия PHP и MYSQL примет "взорваться" вместо "split"

Ответ 4

var_dump(strptime($post_timestamp, '%Y-%m-%d %H:%M:%S'));