Преобразование строки времени в PHP
Мне нужно преобразовать строку в формат даты, но это возвращает странную ошибку. Строка такая:
21 nov 2012
Я использовал:
$time = strtotime('d M Y', $string);
PHP вернул ошибку:
Notice: A non well formed numeric value encountered in index.php on line 11
Чего мне здесь не хватает?
4 ответа:
Вы вызываете функцию совершенно неправильно. Просто передайте его
2-й аргумент предназначен для передачи в метке времени, относительно которой Новое время является относительным. По умолчанию используется значение$time = strtotime('21 nov 2012')time().Edit: , который вернет метку времени unix. Если вы хотите затем отформатировать его, передайте новую метку времени функции
date.
Для преобразования строки даты в другой формат:
<?php echo date('d M Y', strtotime($string));?>
strtotimeсинтаксический анализ строки возвращает представленную метку времени UNIX.dateпреобразует метку времени UNIX (или текущее системное время, если она не указана) в указанный формат. Таким образом, чтобы переформатировать строку даты, вам нужно передать ее черезstrtotime, а затем передать возвращенную метку времени UNIX в качестве второго аргумента для функцииdate. Первый аргумент вdate- это шаблон для выбранного вами формата. хотеть.Нажмите здесь для получения более подробной информации о параметрах формата даты.