我正在处理一个脚本,将从CSV文件导入一些数据。因为我这样做,我想能够检查一个变量,看看它是否是一个有效的日期字符串。
我已经看到了几种方法来检查一个蜇是否是一个日期,但大多数都需要你现在的格式。我不知道日期的格式。
现在我使用strtotime(),但这不容易
$field ="May";
if(strtotime($field)){
echo "This is a date";
}
在这种情况下,“May”是人的名字,而不是日期。
任何人都可以推荐更可靠的功能?
基于某些人的问题进行编辑。
对于在我的情况下作为“日期”传递的变量,它将需要特定于一天/月/年,因此只是“五月”将是模糊计数。
基于这个和Pauls好点下面我们也可以测试看看字符串是否包含数字,如
$field ="May";
if(strtotime($field) && 1 === preg_match('~[0-9]~', $field)){
echo "This is a date";
}else{
echo "Nope not a date";
}
这似乎涵盖了我的迫切需要,但任何一个可以发现任何问题或建议改进?