首頁  >  文章  >  後端開發  >  5

5

WBOY
WBOY原創
2016-07-25 08:47:29882瀏覽
複製程式碼
ddd
  1. /**
  2. * 검증 클래스
  3. *
  4. * @lastmodify 2014-5-16
  5. * @author jy625
  6. */
  7. class verifyAction{
  8. /**
  9. * null값인지 여부
  10. */
  11. 공개 정적 함수 isEmpty($str){
  12. $str = 트림($str);
  13. return !empty($str) ? true : false;
  14. }
  15. /**
  16. * 숫자 확인
  17. * param:$flag: int가 정수이고 float가 부동 소수점 유형인지 여부
  18. */
  19. 공개 정적 함수 isNum($str,$flag = 'float'){
  20. if(!self::isEmpty($ str)) false를 반환합니다.
  21. if(strtolower($flag) == 'int'){
  22. return ((string)(int)$str === (string)$str) ? true : false;
  23. }else{
  24. return ((string)(float)$str === (string)$str) ? true : false;
  25. }
  26. }
  27. /**
  28. * 사용자 이름, 디렉터리 이름 등 이름 매칭
  29. * @param:string $str 매칭할 문자열
  30. * @param:$chinese 중국어 지원 여부, 기본적으로 지원, 파일 이름과 일치하는 경우 끄는 것이 좋습니다(false).
  31. * @param:$charset 인코딩(기본값 utf-8, gb2312 지원)
  32. */
  33. 공개 정적 함수 isName($str,$chinese = true,$charset = 'utf-8'){
  34. if(!self::isEmpty($str)) return false;
  35. if($chinese){
  36. $match = (strtolower($charset) == 'gb2312') ? "/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_-] $/" : "/^[x{4e00}-x{9fa5}A-Za -z0-9_] $/u";
  37. }else{
  38. $match = '/^[A-za-z0-9_-] $/';
  39. }
  40. return preg_match($ 일치,$str) ? true : false;
  41. }
  42. /**
  43. * 이메일 확인
  44. */
  45. 공개 정적 함수 isEmail($str){
  46. if(!self::isEmpty($str)) return false;
  47. return preg_match("/([a-z0-9]*[-_.]?[a-z0-9] )*@([a-z0-9]*[-_]?[a-z0 -9] ) [.][a-z]{2,3}([.][a-z]{2})?/i",$str) ? true : false;
  48. }
  49. // 手机号码验证
  50. 공개 정적 함수 isMobile($str){
  51. $exp = "/^13[0-9]程序猿笑话[0-9 ]{8}$|15[012356789]程序猿笑话[0-9]{8}$|18[012356789]程序猿笑话[0-9]{8}$|14[57]程序猿笑话[0- 9]$/";
  52. if(preg_match($exp,$str)){
  53. true를 반환;
  54. }else{
  55. false를 반환;
  56. }
  57. }
  58. /**
  59. * URL 확인은 순수 URL 형식으로, IP 확인을 지원하지 않습니다.
  60. */
  61. 공개 정적 함수 isUrl($str){
  62. if(!self::isEmpty($str)) return false;
  63. return preg_match('#(http|https |ftp|ftps)://([w-] .) [w-] (/[w-./?%&=]*)?#i',$str) ? true : false;
  64. }
  65. /**
  66. * 중국어 확인
  67. * @param:string $str 일치시킬 문자열
  68. * @param:$charset 인코딩(기본값 utf-8, gb2312 지원)
  69. */
  70. 공개 정적 함수 isChina($str,$charset = 'utf-8'){
  71. if(!self::isEmpty ($str)) return false;
  72. $match = (strtolower($charset) == 'gb2312') ? "/^[".chr(0xa1)."-".chr(0xff)."] $/"
  73. : "/^[x{4e00}-x{9fa5}] $/u";
  74. preg_match($match,$str)를 반환합니까? 사실 : 거짓;
  75. }
  76. /**
  77. * UTF-8 유효성 검사
  78. */
  79. 공개 정적 함수 isUtf8($str){
  80. if(!self::isEmpty($str)) return false;
  81. return (preg_match("/^([".chr(228)."-".chr(233)."]程序猿笑话[".chr(128)."-".chr(191). "]程序猿笑话[".chr(128)."-".chr(191)."]程序猿笑话)程序猿笑话/",$word)
  82. == true || [".chr(228)."-".chr(233)."]程序猿笑话[".chr(128)."-".chr(191)."]程序猿笑话[".chr(128) )."-".chr(191)."]程序猿笑话)程序猿笑话$/",$word)
  83. == true || preg_match("/([".chr(228)."- ".chr(233)."]程序猿笑话[".chr(128)."-".chr(191)."]程序猿笑话[".chr(128)."-".chr(191) ."]程序猿笑话){2,}/",$word)
  84. == true) ? 사실 : 거짓;
  85. }
  86. /**
  87. * 驗證長度
  88. * @param: string $str
  89. * @param: int $type(方式,預設min * @param: int $min,最小值;$max,最大值;
  90. * @param: string $charset 字元
  91. */
  92. 公共靜態函數長度($str,$type=3,$min=0,$max=0,$charset = 'utf-8'){
  93. if(!self::isEmpty($str)) return false;
  94. $len = mb_strlen($str,$charset);
  95. switch($type){
  96. case 1: //只符合最小值
  97. 回傳($len >= $min) ? true : false;
  98. break;
  99. case 2: //只符合頂峰
  100. return ($max >= $len) ? true : false ;
  101. break;
  102. 預設值: //min return (($min }
  103. }
  104. /**
  105. * 驗證密碼
  106. * @param string $value
  107. * @param int $length
  108. * @return boolean
  109. */
  110. 公用靜態函數isPWD($value,$minLen=6,$maxLen=16){
  111. $match ='/^[\~!@#$%^&*()-_= |{}[],.?/:;'"dw]{'.$minLen.','.$maxLen.'} $/';
  112. $v = trim($value);
  113. if(empty($v))
  114. return false;
  115. return preg_match($match,$v);
  116. }
  117. /**
  118. * 驗證使用者名稱
  119. * @param string $value
  120. * @param int $length
  121. * @return boolean
  122. */
  123. public static function isNames($value, $minLen=2, $maxLen=16, $charset='ALL'){
  124. if(empty($value) )
  125. return false;
  126. switch($charset){
  127. case 'EN': $match = '/^[_wd]{'.$minLen.','.$maxLen.'}$/ iu';
  128. break;
  129. case 'CN':$match = '/^[_x{4e00}-x{9fa5}d]{'.$minLen.','.$maxLen.'}$ /iu';
  130. break;
  131. 預設值:$match = '/^[_wdx{4e00}-x{9fa5}]{'.$minLen.','.$maxLen.'}$/iu ' ;
  132. }
  133. return preg_match($match,$value);
  134. }
  135. /**
  136. * 驗證信箱
  137. * @param string $value
  138. */
  139. public static function checkZip($str){
  140. if ( strlen($str)!=6){
  141. 回傳false;
  142. }
  143. if(substr($str,0,1)==0){
  144. 回傳false;
  145. }
  146. return true;
  147. }
  148. /**
  149. * 匹配日期
  150. * @param string $value
  151. */
  152. public static function checkDate($str){
  153. $dateArr =explode("-", $str);
  154. if (is_numeric($dateArr[0]) && is_numeric($dateArr[1]) && is_numeric($dateArr[2])) {
  155. if (($dateArr[0] >= 1000 & $timeArr[ 0] = 0 && $dateArr[1] = 0 && $dateArr[2] 回傳true;
  156. else
  157. 回傳false;
  158. }
  159. 回傳false;
  160. }
  161. /**
  162. * 匹配時間
  163. * @param string $value
  164. */
  165. 公用靜態函數check ($str){Time ($str){Time ($str){Time ($str){Time ($str){Time ($str){Time ($str){Time ($str){Time ($str)
  166. $timeArr = 爆炸(":", $str);
  167. if (is_numeric($timeArr[0]) && is_numeric($timeArr[1]) && is_numeric($timeArr[2] ])) {
  168. if (($timeArr[0] >= 0 && $timeArr[0] = 0 && $timeArr[1] = 0 && $timeArr[2] 回傳true;
  169. else
  170. 回傳false;
  171. }
  172. 回傳false ;
  173. }
  174. }
回傳false ;
} }
複製程式碼
dddd


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:PHP監聽Socket下一篇:PHP監聽Socket