Я хочу проверить, содержит ли строка даты / времени день или нет?
Я использовал функцию date_pharse (), но она автоматически добавляет day => 1, если не находит ни одного дня. Поэтому я не мог знать, содержит ли строка день или нет.
Например - $date = "2021-02";
Как узнать, содержит ли эта строка день или нет?
0
PK Kulhari
24 Фев 2021 в 06:44
2 ответа
Лучший ответ
Я думаю, вы ожидаете чего-то подобного.
<?php
$date1 = "2021-02";
$date2 = "2021-02-11";
$date3 = "2021-12";
$date4 = "2021-12-14";
$date1_array = explode("-", $date1);
$date2_array = explode("-", $date2);
$date3_array = explode("-", $date3);
$date4_array = explode("-", $date4);
if (count ($date1_array) == 3)
{
echo $date1 . ": It's a Date.";
echo "<br />";
}
if (count ($date2_array) == 3)
{
echo $date2 . ": It's a Date.";
echo "<br />";
}
if (count ($date3_array) == 3)
{
echo $date3 . ": It's a Date.";
echo "<br />";
}
if (count ($date4_array) == 3)
{
echo $date4 . ": It's a Date.";
echo "<br />";
}
?>
0
John Doe
24 Фев 2021 в 03:54
Метод DateTime :: createFromFormat хорошо проверяет, соблюдается ли формат . Такие записи, как «2019-02-» или «2019-xx-23» также распознаются как неправильные.
$date = "2021-02-x";
$dateTime = DateTime::createFromFormat('Y-m-d',$date);
if($dateTime){
echo $date.' ok';
}
else {
echo 'wrong date '.$date;
}
0
jspit
24 Фев 2021 в 08:11
Похожие вопросы
Новые вопросы
php
PHP - это широко используемый высокоуровневый, динамический, объектно-ориентированный и интерпретируемый язык сценариев, в первую очередь предназначенный для серверной веб-разработки. Используется для вопросов о языке PHP.