php - PHP日期,如何防止php日期自动转换为第二天?
问题描述
如您所知,php date 将返回这些日期的有效日期:
year-04-31
year-06-31
year-09-31
我在这里阅读了关于不存在日期的其他 SO 线程,但是这个线程并没有解决我的问题。我的目标是防止 php 自动让这些日期转换为第二天。例如,如果用户输入日期2018-04-31
,系统会提示错误。
$value = '2018-06-31'; // assume user input this date
if(date is 04-31, 06-31 or 09-31) // i have no idea what to put here
echo 'wrong date, please enter again';
编辑
有人实际上在 SO中将这个问题发布为该线程的重复项......它的哪一部分说的是关于 4-31、6-31、9-31 的内容?请不要简单地将其标记为重复,在标记之前将我的问题与其他问题进行比较。谢谢你
解决方案
尝试以下
<?php
$date = '2018-06-31';
function checkIsAValidDate($date){
return (bool)strtotime($date) && date("Y-m-d", strtotime($date)) == $date;
}
if(checkIsAValidDate($date) == 1){
echo 'valid';
}else{
echo 'not valid';
}
?>
这将验证格式,并且日期是真实的。IE,六月只有30天。
推荐阅读
- ubuntu - mariadb.service 在重新安装 mariadb-server 后无法启动
- arrays - 为什么我的状态数组重置为空?
- python-3.x - 如何在最小化的 Windows 10 窗口中运行长 Python 脚本?
- python - 国际象棋运动,内存不足python循环
- php - 替换 WooCommerce 中未登录用户的添加到购物车按钮
- reactjs - useState() 反应/电子最终出现空白屏幕
- javascript - Node.js (Express) 使用 cors,但出现此错误:不存在“Access-Control-Allow-Origin”标头 (...)
- asp.net-web-api - IIS 将应用程序添加到网站不起作用,但单独的网站有效
- arrays - 了解 dask 数组块
- javascript - 当我在 vuejs 中单击它时,如何将 div 中的文本从“暗”和“亮”来回切换?