изменить формат даты с помощью php
176 просмотра
6 ответа
Я хочу изменить формат даты по php, у меня есть дата в таком формате, d/m/Y
и я хочу изменить наY-m-d
Я видел этот вопрос, но для моего случая я все еще получаю пустое значение.
EX:$_REQUEST["date_moc"]='21/07/2014';
Я пытался сделать, echo strtotime($_REQUEST["date_moc"]);
но ничего не появляется на моем экране.
и когда echo date("Y-m-d",strtotime($_REQUEST["date_moc"]));
я получаю1970-01-01
Любая помощь, пожалуйста, мне действительно интересно с моим кодом, который возвращает пустое значение, например, если возможно, пожалуйста, сообщите мне о моей проблеме. Я с нетерпением жду вашего ответа в ближайшее время!
Спасибо!
Автор: koe Источник Размещён: 12.11.2019 09:49Ответы (6)
1 плюс
Самый простой способ
$_REQUEST["date_moc"]='21/07/2014';
$explode = explode('/', $_REQUEST["date_moc"]);
list($day,$month,$year) = $explode;
$new_date = "$year-$month-$day";
echo $new_date;
Автор: turson
Размещён: 21.07.2014 11:44
1 плюс
Попробуйте это: - Рабочая демоверсия
$date = explode('/',str_replace('-','/',$_REQUEST["date_moc"]));
$updated_date = $date[2].'-'.$date[1].'-'.$date[0];
echo $updated_date;
Автор: Rakesh Shetty
Размещён: 21.07.2014 11:46
1 плюс
$_REQUEST["date_moc"]='21/07/2014';
$original_date = explode('/', $_REQUEST["date_moc"]);
$year = $original_date[2]; // 2014
$month = $original_date[1]; // 07
$day = $original_date[0]; // 21
$date = $year.'/'.$month.'/'.$day;
echo $date;
Автор: Jalpa
Размещён: 21.07.2014 11:52
1 плюс
Это очень легко просто использовать DateTime::createFromFormat()
$date = DateTime::createFromFormat('d/m/Y', '21/07/2014');
echo $date->format('Y-m-d');
Смотрите живую демоверсию на eval.in
Для улучшения
Затем вы также можете проверить недопустимый ввод, если вы немного расширили фрагмент:
if(($date = DateTime::createFromFormat('d/m/Y', '21//2014')) !== false)
echo $date->format('Y-m-d');
else
echo 'Invalid format';
Но это только проверка шаблона, которая похожа на регулярное выражение, как
/ (\ D {1,2}) / (\ d {1,2}) / (\ d {4}) /
Это по-прежнему позволяет пользователю вводить что-то вроде:
50/13/2014
Чтобы проверить, является ли предоставленная дата действительной или недействительной, проверьте содержание DateTime::getLastErrors()
. Он подробно расскажет вам, что пошло не так. Для примера выше вы получите что-то вроде этого:
array(4) {
["warning_count"]=>
int(1)
["warnings"]=>
array(1) {
[10]=>
string(27) "The parsed date was invalid"
}
["error_count"]=>
int(0)
["errors"]=>
array(0) {
}
}
Таким образом, согласно этой информации, мы можем немного расширить фрагмент. Что приводит нас к похожему результату:
$date = DateTime::createFromFormat('d/m/Y', '50/13/2014')
if($date !== false) {
$dateLastErrors = $date->getLastErrors();
if($dateLastErrors['error_count'] > 0 || $dateLastErrors['warning_count'] > 0)
echo 'Invalid date';
else
echo $date->format('Y-m-d');
} else
echo 'Invalid date format';
}
Который, наконец, будет проверять дату по формату проверки.
Автор: TiMESPLiNTER Размещён: 21.07.2014 11:460 плюса
$date = $_REQUEST["date_moc"];// OR $date ='21/07/2014'; avoid $_REQUEST["date_moc"]='21/07/2014';
echo date('Y-m-d', strtotime($date));
Автор: sarath
Размещён: 21.07.2014 11:46
0 плюса
Самый простой способ
$date ='21/07/2014';
$date = str_replace("/", "-", $date);
echo date("Y-m-d",strtotime($date));
Автор: Satish Sharma
Размещён: 21.07.2014 11:47
Вопросы из категории :
- php Как вы отлаживаете PHP-скрипты?
- php Заставьте XAMPP / Apache обслуживать файл вне htdocs
- php Как включить файлы PHP, которые требуют абсолютного пути?
- php Скрипт входа со скрытыми кнопками
- php How can I find unused functions in a PHP project
- php Эффективное изменение размера JPEG изображения в PHP
- date Как получить разницу между двумя датами в JavaScript?
- date Получить последний день месяца в Python
- date DateTime.Now против DateTime.UtcNow
- date Получить последнюю пятницу месяца в Java
- date Why does Javascript getYear() return 108?
- date Как вернуть только дату из типа данных SQL Server DateTime
- datetime Как рассчитать чей-то возраст в C #?
- datetime DateTime.Now лучший способ измерить производительность функции?
- datetime Как я могу получить DateTime для начала недели?
- datetime Как преобразовать DateTime в VarChar
- datetime Как преобразовать локальное время в UTC в Python?
- datetime Отображение даты / времени в формате локали пользователя и смещения времени