欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php表单数据验证类,php表单验证

程序员文章站 2022-05-09 16:45:20
...

php表单数据验证类,php表单验证

非常好用方便的表单数据验证类

php 
//验证类
class Fun{ 
       
    function isEmpty($val) 
    { 
        if (!is_string($val)) return false; //是否是字符串类型  
   
        if (empty($val)) return false; //是否已设定  
   
        if ($val=='') return false; //是否为空  
   
        return true;  
           
    } 
    /*
     -----------------------------------------------------------
    函数名称:isNumber
    简要描述:检查输入的是否为数字
    输入:string
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isNumber($val) 
    { 
        if(ereg("^[0-9]+$", $val)) 
            return true; 
        return false; 
    } 
        
    /*
     -----------------------------------------------------------
    函数名称:isPhone
    简要描述:检查输入的是否为电话
    输入:string
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isPhone($val) 
    { 
        //eg: xxx-xxxxxxxx-xxx | xxxx-xxxxxxx-xxx ... 
        if(ereg("^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$",$val)) 
            return true; 
        return false; 
    } 
   
    /*
     -----------------------------------------------------------
    函数名称:isPostcode
    简要描述:检查输入的是否为邮编
    输入:string
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isPostcode($val) 
    { 
        if(ereg("^[0-9]{4,6}$",$val)) 
            return true; 
        return false; 
    } 
        
    /*
     -----------------------------------------------------------
    函数名称:isEmail
    简要描述:邮箱地址合法性检查
    输入:string
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isEmail($val,$domain="") 
    { 
        if(!$domain) 
        { 
            if( preg_match("/^[a-z0-9-_.]+@[\da-z][\.\w-]+\.[a-z]{2,4}$/i", $val) ) 
            { 
                return true; 
            } 
            else 
                return false; 
        } 
        else 
        { 
            if( preg_match("/^[a-z0-9-_.]+@".$domain."$/i", $val) ) 
            { 
                return true; 
            } 
            else 
                return false; 
        } 
    }//end func 
        
    /*
     -----------------------------------------------------------
    函数名称:isName
    简要描述:姓名昵称合法性检查,只能输入中文英文
    输入:string
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isName($val) 
    { 
        if( preg_match("/^[\x80-\xffa-zA-Z0-9]{3,60}$/", $val) )//2008-7-24 
        { 
            return true; 
        } 
        return false; 
    }//end func 
        
       
    /*
     -----------------------------------------------------------
    函数名称:isStrLength($theelement, $min, $max)
    简要描述:检查字符串长度是否符合要求
    输入:mixed (字符串,最小长度,最大长度)
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isStrLength($val, $min, $max) 
    { 
        $theelement= trim($val); 
        if(ereg("^[a-zA-Z0-9]{".$min.",".$max."}$",$val)) 
            return true; 
        return false; 
    } 
       
        
    /*
     -----------------------------------------------------------
    函数名称:isNumberLength($theelement, $min, $max)
    简要描述:检查字符串长度是否符合要求
    输入:mixed (字符串,最小长度,最大长度)
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isNumLength($val, $min, $max) 
    { 
        $theelement= trim($val); 
        if(ereg("^[0-9]{".$min.",".$max."}$",$val)) 
            return true; 
        return false; 
    } 
        
    /*
     -----------------------------------------------------------
    函数名称:isNumberLength($theelement, $min, $max)
    简要描述:检查字符串长度是否符合要求
    输入:mixed (字符串,最小长度,最大长度)
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isEngLength($val, $min, $max) 
    { 
        $theelement= trim($val); 
        if(ereg("^[a-zA-Z]{".$min.",".$max."}$",$val)) 
            return true; 
        return false; 
    } 
        
    /*
     -----------------------------------------------------------
    函数名称:isEnglish
    简要描述:检查输入是否为英文
    输入:string
    输出:boolean
    作者:------
    修改日志:------
    -----------------------------------------------------------
    */ 
    function isEnglish($theelement) 
    { 
        if( ereg("[\x80-\xff].",$theelement) ) 
        { 
            Return false; 
        } 
        Return true; 
    } 
        
    /*
     -----------------------------------------------------------
    函数名称:isChinese
    简要描述:检查是否输入为汉字
    输入:string
    输出:boolean
    修改日志:------
    -----------------------------------------------------------
    */ 
    /*
    function isChinese($sInBuf)//有问题的函数
    {
        $iLen= strlen($sInBuf);
        for($i= 0; $i=0x80)
            {
            if( (ord($sInBuf{$i})>=0x81 && ord($sInBuf{$i})=0x40 && ord($sInBuf{$i+1})  0x7E && ord($sInBuf{$i+1})0xA0 && ord($sInBuf{$i})*/ 
           
           
        function isChinese($sInBuf)//正确的函数 
        { 
            if (preg_match("/^[\x7f-\xff]+$/", $sInBuf)) { //兼容gb2312,utf-8 
                   
                return true; 
            } 
            else 
            { 
                return false; 
            } 
        } 
            /*
             -----------------------------------------------------------
            函数名称:isDomain($Domain)
            简要描述:检查一个(英文)域名是否合法
            输入:string 域名
            输出:boolean
            修改日志:------
            -----------------------------------------------------------
            */ 
            function isDomain($Domain) 
            { 
                if(!eregi("^[0-9a-z]+[0-9a-z\.-]+[0-9a-z]+$", $Domain)) 
                { 
                    Return false; 
                } 
                if( !eregi("\.", $Domain)) 
                { 
                    Return false; 
                } 
                    
                if(eregi("\-\.", $Domain) or eregi("\-\-", $Domain) or eregi("\.\.", $Domain) or eregi("\.\-", $Domain)) 
                { 
                    Return false; 
                } 
                    
                $aDomain= explode(".",$Domain); 
                if( !eregi("[a-zA-Z]",$aDomain[count($aDomain)-1]) ) 
                { 
                    Return false; 
                } 
                    
                if(strlen($aDomain[0]) > 63 || strlen($aDomain[0]) ) 
                { 
                    Return false; 
                } 
                Return true; 
            } 
            /**
             * 验证是否日期的函数
             * @param unknown_type $date
             * @param unknown_type $format
             * @throws Exception
             * @return boolean
             */ 
            function validateDate( $date, $format='YYYY-MM-DD') 
            { 
                switch( $format ) 
                { 
                    case 'YYYY/MM/DD': 
                    case 'YYYY-MM-DD': 
                        list( $y, $m, $d ) = preg_split( '/[-./ ]/', $date ); 
                        break; 
               
                    case 'YYYY/DD/MM': 
                    case 'YYYY-DD-MM': 
                        list( $y, $d, $m ) = preg_split( '/[-./ ]/', $date ); 
                        break; 
               
                    case 'DD-MM-YYYY': 
                    case 'DD/MM/YYYY': 
                        list( $d, $m, $y ) = preg_split( '/[-./ ]/', $date ); 
                        break; 
               
                    case 'MM-DD-YYYY': 
                    case 'MM/DD/YYYY': 
                        list( $m, $d, $y ) = preg_split( '/[-./ ]/', $date ); 
                        break; 
               
                    case 'YYYYMMDD': 
                        $y = substr( $date, 0, 4 ); 
                        $m = substr( $date, 4, 2 ); 
                        $d = substr( $date, 6, 2 ); 
                        break; 
               
                    case 'YYYYDDMM': 
                        $y = substr( $date, 0, 4 ); 
                        $d = substr( $date, 4, 2 ); 
                        $m = substr( $date, 6, 2 ); 
                        break; 
               
                    default: 
                        throw new Exception( "Invalid Date Format" ); 
                } 
                return checkdate( $m, $d, $y ); 
            } 
               
               
            /*
            -----------------------------------------------------------
            函数名称:isDate
            简要描述:检查日期是否符合0000-00-00
                输入:string
                    输出:boolean
                    修改日志:------
                    -----------------------------------------------------------
                    */ 
                    function isDate($sDate) 
                    { 
                        if( ereg("^[0-9]{4}\-[][0-9]{2}\-[0-9]{2}$",$sDate) ) 
                        { 
                        Return true; 
            } 
            else 
            { 
            Return false; 
        } 
        } 
         /*
          -----------------------------------------------------------
          函数名称:isTime
          简要描述:检查日期是否符合0000-00-00 00:00:00
          输入:string
          输出:boolean
          修改日志:------
          -----------------------------------------------------------
          */ 
          function isTime($sTime) 
          { 
         if( ereg("^[0-9]{4}\-[][0-9]{2}\-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}$",$sTime) ) 
            { 
                Return true; 
         } 
            else 
            { 
            Return false; 
         } 
         } 
             
         /*
         -----------------------------------------------------------
         函数名称:isMoney($val)
         简要描述:检查输入值是否为合法人民币格式
         输入:string
         输出:boolean
         修改日志:------
         -----------------------------------------------------------
         */ 
         function isMoney($val) 
         { 
         if(ereg("^[0-9]{1,}$", $val)) 
            return true; 
         if( ereg("^[0-9]{1,}\.[0-9]{1,2}$", $val) ) 
            return true; 
         return false; 
        } 
            
        /*
         -----------------------------------------------------------
        函数名称:isIp($val)
            简要描述:检查输入IP是否符合要求
            输入:string
                输出:boolean
                修改日志:------
                -----------------------------------------------------------
                */ 
                function isIp($val) 
                { 
                 return(bool) ip2long($val); 
                } 
                //----------------------------------------------------------------------------- 
       
       
       
        /**
         * 验证手机号
         * @param int $mobile
         */ 
        function valid_mobile($mobile){ 
            if(strlen($mobile)!=11) return false; 
            if(preg_match('/13[0-9]\d{8}|15[0|1|2|3|5|6|7|8|9]\d{8}|18[0|5|6|7|8|9]\d{8}/',$mobile)){ 
                return true; 
            }else{ 
                return false; 
            } 
        } 
           
        /**
         * 缩略图生成函数,最好使用GD2
         *
         * @param string $srcFile 要生成缩略图的文件
         * @param int $toW 缩略图宽度
         * @param int $toH 缩略图高度
         * @param string $toFile 缩略图文件
         */ 
        function ImageResize($srcFile,$toW,$toH,$toFile=""){ 
            if($toFile==""){ $toFile = $srcFile; } 
            $info = ""; 
            $data = GetImageSize($srcFile,$info); 
            switch ($data[2]){ 
                case 1: 
                    if(!function_exists("imagecreatefromgif")){ 
                        //echo "你的GD库不能使用GIF格式的图片,请使用Jpeg或PNG格式!返回"; 
                        return false; 
                    } 
                    $im = ImageCreateFromGIF($srcFile); 
                    break; 
                case 2: 
                    if(!function_exists("imagecreatefromjpeg")){ 
                        //echo "你的GD库不能使用jpeg格式的图片,请使用其它格式的图片!返回"; 
                        return false; 
                    } 
                    $im = ImageCreateFromJpeg($srcFile); 
                    break; 
                case 3: 
                    $im = ImageCreateFromPNG($srcFile); 
                    break; 
            } 
            $srcW=ImageSX($im); 
            $srcH=ImageSY($im); 
            $toWH=$toW/$toH; 
            $srcWH=$srcW/$srcH; 
            if($toWH$srcWH
相关标签: php