合肥網站建設
文章閱讀
網建技巧
優(yōu)化技巧
網建問題
謹宸新聞
行業(yè)新聞

首頁 > 合肥網站建設 > 正文

php非常好的一個表單驗證類

發(fā)布時間:2013/10/12字體:
摘要:php非常好的一個表單驗證類,php高級正則表達式驗證類,相信大家都通過各種途徑(包括百度、谷歌、搜搜)去搜索php常用表單驗證類吧,本人親自測試并修改和完善了一個非常好的表單驗證類,8年php經驗才總結得出的哦,希
個人整理的一個非常不錯的php驗證類,很多人在尋找php驗證類的時候可能都很盲目,有的在找固話、手機驗證類等等,我特意整理了一些,經過測試檢測,每個都可以使用,而且代碼經過我本人優(yōu)化得出。

    /**********************************************
    *   整理類型:  常用驗證表單提交類                  *
    *    整理時間:  2012-11-26                         *
    *    整理人:    icyzhl,499375381@qq.com          *
    *********************************************/
    
    class verify{
        #驗證用戶名,$value傳遞值;$minLen最小長度;$maxLen最長長度;只允許下劃線+漢字+英文+數字(不支持其它特殊字符)
        #@param string $value
        #@param int $length
        #@return boolean
        function isUsername($value,$minLen=2,$maxLen=30){
            if(!$value) return false;
            return preg_match('/^[_\w\d\x{4e00}-\x{9fa5}]{'.$minLen.','.$maxLen.'}$/iu',$value);
        }
        
        #驗證是否為指定語言,$value傳遞值;$minLen最小長度;$maxLen最長長度;$charset默認字符類別(en只能英文;cn只能漢字;alb數字;ALL不限制)
        #@param string $value
        #@param int $length
        #@return boolean
        function islanguage($value,$charset='all',$minLen=1,$maxLen=50){
            if(!$value) return false;
            switch($charset){
                case 'en':$match = '/^[a-zA-Z]{'.$minLen.','.$maxLen.'}$/iu';break;
                case 'cn':$match = '/^[\x{4e00}-\x{9fa5}]{'.$minLen.','.$maxLen.'}$/iu';break;
                case 'alb':$match = '/^[0-9]{'.$minLen.','.$maxLen.'}$/iu';break;
                case 'enalb':$match = '/^[a-zA-Z0-9]{'.$minLen.','.$maxLen.'}$/iu';break;
                case 'all':$match = '/^[a-zA-Z0-9\x{4e00}-\x{9fa5}]{'.$minLen.','.$maxLen.'}$/iu';break;
                //all限制為:只能是英文或者漢字或者數字的組合
            }
            return preg_match($match,$value);
        }

        #驗證密碼,$value傳遞值;$minLen最小長度;$maxLen最長長度;
        #@param string $value
        #@param int $length
        #@return boolean
        function isPassword($value,$minLen=6,$maxLen=16){//支持空格
            $match='/^[\\~!@#$%^&*() -_=+|{}\[\],.?\/:;\'\"\d\w]{'.$minLen.','.$maxLen.'}$/i';
            $value=trim($value);
            if(!$value) return false;
            return preg_match($match,$value);
        }
    
        #驗證eamil,$value傳遞值;$minLen最小長度;$maxLen最長長度;$match正則方式
        #@param string $value
        #@param int $length
        #@return boolean
        function isEmail($value,$minLen=6,$maxLen=60,$match='/^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/i'){
            if(!$value) return false;
            return (strlen($value)>=$minLen && strlen($value)<=$maxLen && preg_match($match,$value))?true:false;
        }
        
        /*********************************************closed by icyzhl/
        /*
                
        #格式化money,$value傳遞值;小數點后最多2位
        #@param string $value
        #@return boolean
        function formatMoney($value){
            return sprintf("%1\$.2f",$value);
        }
    
        #驗證電話號碼,$value傳遞值;$match正則方式
        #@param string $value
        #@return boolean
        function isTelephone($value,$match='/^(0[1-9]{2,3})(-| )?\d{7,8}$/'){
            //支持國際版:$match='/^[+]?([0-9]){1,3}?[ |-]?(0[1-9]{2,3})(-| )?\d{7,8}$/'
            if(!$value) return false;
            return preg_match($match,$value);
        }

下一頁】[1] [2]
本文標題:php非常好的一個表單驗證類
本文網址:http://www.bailzz.com/wangjianjiqiao/2855.html
原創(chuàng)網址:合肥網絡公司<謹宸科技> 版權所有,轉載請注明出處,并以鏈接形式鏈接網址:www.bailzz.com
文章標簽:php非常驗證
 上一篇:最經典的php鏈接操作mysql數據庫類
 下一篇:互聯網的沖擊下,漸漸消失的報紙