php常用正則表達式,驗證用戶名,密碼,Email,Url等

phpde 9年前發布 | 10K 次閱讀 PHP

<?php
class Verify{
/**

  • 驗證用戶名
  • @param string $value
  • @param int $length
  • @return boolean */ public static function isNames($value, $minLen=2, $maxLen=20, $charset='ALL'){

     if(empty($value))
         return false;
     switch($charset){
         case 'EN': $match = '/^[_\w\d]{'.$minLen.','.$maxLen.'}$/iu';
             break;
         case 'CN':$match = '/^[_\x{4e00}-\x{9fa5}\d]{'.$minLen.','.$maxLen.'}$/iu';
             break;
         default:$match = '/^[_\w\d\x{4e00}-\x{9fa5}]{'.$minLen.','.$maxLen.'}$/iu';
     }
     return preg_match($match,$value);
    

    }

    /**

    • 驗證密碼
    • @param string $value
    • @param int $length
    • @return boolean / public static function isPWD($value,$minLen=5,$maxLen=16){ $match='/^[\~!@#$%^&()-_=+|{}[],.?\/:;\'\"\d\w]{'.$minLen.','.$maxLen.'}$/'; $v = trim($value); if(empty($v))

       return false;
      

      return preg_match($match,$v); }

      /**

    • 驗證eamil
    • @param string $value
    • @param int $length
    • @return boolean / public static function isEmail($value,$match='/^[\w\d]+[\w\d-.]@[\w\d-.]+.[\w\d]{2,10}$/i'){ $v = trim($value); if(empty($v))

       return false;
      

      return preg_match($match,$v); }

      /**

    • 驗證電話號碼
    • @param string $value
    • @return boolean */ public static function isTelephone($value,$match='/^0[0-9]{2,3}[-]?\d{7,8}$/'){ $v = trim($value); if(empty($v))

       return false;
      

      return preg_match($match,$v); }

      /**

    • 驗證手機
    • @param string $value
    • @param string $match
    • @return boolean */ public static function isMobile($value,$match='/^[(86)|0]?(13\d{9})|(15\d{9})|(18\d{9})$/'){ $v = trim($value); if(empty($v))
       return false;
      
      return preg_match($match,$v); } /**
    • 驗證郵政編碼
    • @param string $value
    • @param string $match
    • @return boolean */ public static function isPostcode($value,$match='/\d{6}/'){ $v = trim($value); if(empty($v))
       return false;
      
      return preg_match($match,$v); } /**
    • 驗證IP
    • @param string $value
    • @param string $match
    • @return boolean */ public static function isIP($value,$match='/^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/'){ $v = trim($value); if(empty($v))

       return false;
      

      return preg_match($match,$v); }

      /**

    • 驗證身份證號碼
    • @param string $value
    • @param string $match
    • @return boolean */ public static function isIDcard($value,$match='/^\d{6}((1[89])|(2\d))\d{2}((0\d)|(1[0-2]))((3[01])|([0-2]\d))\d{3}(\d|X)$/i'){ $v = trim($value); if(empty($v))

       return false;
      

      else if(strlen($v)>18)

       return false;
      

      return preg_match($match,$v); }

      /**

    • *
    • 驗證URL
    • @param string $value
    • @param string $match
    • @return boolean / public static function isURL($value,$match='/^(http:\/\/)?(https:\/\/)?([\w\d-]+.)+[\w-]+(\/[\d\w-.\/?%&=])?$/'){ $v = strtolower(trim($value)); if(empty($v))
       return false;
      
      return preg_match($match,$v);
      } } ?></pre>
 本文由用戶 phpde 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!