科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道判断日期合法性php程序,好多难理解的地方。

判断日期合法性php程序,好多难理解的地方。

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

判断日期合法性php程序,好多难理解的地方。

作者:csdn 来源:csdn 2009年12月15日

关键字: 问答 PHP MySQL

  • 评论
  • 分享微博
  • 分享邮件

判断日期合法性php程序,好多难理解的地方。

大家帮我看看这个程序:
 
源代码如下:
PHP code
<?
/*
这个函数可以用来检查年月日形式的日期合法性,您只要稍作修改便可以检查其它形式的日期合法性.
功能:日期合法性检查
返回: true(合法)/false(不合法)
参数:$ymd 年月日形式的日期
    $sep 年月日之间的分隔符,默认为-
*/
function datecheck($ymd,$sep='-'){
   $parts = explode($sep,$ymd);
   $year = $parts[0];
   $month = $parts[1];
   $day = $parts[2];

   if(isint($year) && isint($month) && isint($day)){
      if(checkdate($month,$day,$year)) return true;
      else return false;
   }
   else return false;
}

// [ php/inc/isint.php ] cvs 1.2
function isint($str){
   $str = (string)$str;

   $pos = 0;
   $len = strlen($str);
   for($i=0;$i<$len;$i++){
      if($str[$i]=='0') $pos++;
      else break;
   }
   $str = substr($str,$pos);

   $int = (int)$str;
   if($str==(string)$int) return true;
   else return false;
}

//测试
$dates = array(
               '2000-4-11' => '-',
               '1900-2-1' => '-',
               '2001-03-01' => '-',
               'abaf' => '-',
               '20.03.05' => '.'
              );
while(list($date,$sep)=each($dates)){
   if(datecheck($date,$sep)) echo $date.' 是合法日期<br>';
   else echo $date.' 不是合法日期<br>';
}
//
?>

 

1. 是C语言风格的类型转换,

2. 那个函数是判断一个字符串是否是整数,直接判断是否含有数字之外的字符更加方便。

3. each是遍历数组,每次返回当前iterator的元素

 

while(list($date,$sep)=each($dates)){
  if(datecheck($date,$sep)) echo $date.' 是合法日期 <br>';
  else echo $date.' 不是合法日期 <br>';

 
 

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章