有没有判断时间的函数,要求,时间满足格式 yyyy-mm-dd同时让输入的格式必须是着几位,而且要求检测时间的正确性。
谢谢
---------------------------------------------------------------
用时间戳来记录时间,至于格式嘛,可以根据你的需要随意转换.
检测和比较嘛,就简单啦,只要你会比较和检测整形数.
---------------------------------------------------------------
用正则表达式行不行?
---------------------------------------------------------------
这件事情应该在客户端完成
1<script>
2/*** 简单的日期检查,成功返回日期对象 ***/
3String.prototype.isDate = function() {
4var p;
5var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;
6var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;
7var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;
8if(re1.test(this)) {
9p = re1.exec(this);
10return new Date(p[1],p[2],p[3]);
11}
12if(re2.test(this)) {
13p = re2.exec(this);
14return new Date(p[3],p[1],p[2]);
15}
16if(re3.test(this)) {
17p = re3.exec(this);
18return new Date(p[3],p[1],p[2]);
19}
20return false;
21}
22</script>
---------------------------------------------------------------
检查位数, 用split切-来判好了.
检查日期, 用以下函数:
checkdate
(PHP 3, PHP 4 )
checkdate -- 验证一个格里高里日期
说明
bool checkdate ( int month, int day, int year)
如果给出的日期有效则返回 TRUE,否则返回 FALSE。检查由参数构成的日期的合法性。日期在以下情况下被认为有效:
year 的值是从 1 到 32767
month 的值是从 1 到 12
Day 的值在给定的 month 所应该具有的天数范围之内,闰年已经考虑进去了。
---------------------------------------------------------------
$sj = "2003-02-13";
$ar = split("\-",$sj);
if(!checkdate($ar[1],$ar[2],$ar[0]))
echo "A";
else
echo "B";
---------------------------------------------------------------
可以写个函数判断日期格式,至于判断日期是否正确,可以用checkdate()来判断,checkdate($date,month,day,year);
---------------------------------------------------------------
is_numeric() -- Finds whether a variable is a number or a numeric string
按时间的规律
自定义一个函数