公共方法整合(二)
阿新 • • 發佈:2020-08-27
本文同樣儲存一些本人使用的公共方法
不過本篇主要儲存的是一些驗證方法
方法目錄:
方法:
/** * 正則判定手機號碼格式是否正確 * @param [type] $phone 手機號碼 * @return boolean 判定結果 */ function is_mobile($phone) { // $preg = '/^(0|86|17951)?(13[0-9]|15[0-9]|17[0-9]|18[0-9]|14[57])[0-9]{8}$/'; #正則方法 上面早期的部分號段不全$preg = '/^[1][3,4,5,6,7,8,9][0-9]{9}$/'; return (bool) preg_match($preg, $phone); }
2020年08月27日
方法:
/** * 正則判定身份證號碼是否正確 * @param [type] $idcard 身份證號碼 * @return boolean 判定結果 */ function isIdCard($idcard) { $preg = '/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/';return (bool) preg_match($preg, $idcard); } #方法二 /** * 驗證18位身份證(計算方式在百度百科有) * @param string $id 身份證號碼 * @return [type] 判定結果 */ function check_identity($id='') { $set = array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2); $ver = array('1','0','x','9','8','7','6','5','4','3','2'); $arr = str_split($id); $sum = 0; for ($i = 0; $i < 17; $i++) { if (!is_numeric($arr[$i])) { $result['status'] = 0; $result['info'] = '請輸入18位身份證號'; return $result; } $sum += $arr[$i] * $set[$i]; } $mod = $sum % 11; if (strcasecmp($ver[$mod],$arr[17]) != 0) { $result['status'] = 0; $result['info'] = '您的身份證號不符合中國公民,請檢查'; return $result; } return TRUE; }
2020年08月07日
方法:
#正則判定使用者名稱 #方法一 /** * 正則判定使用者名稱 大寫字母為首的6-20 * @param [type] $users 使用者名稱 * @return boolean 判定結果 */ function isUsers($users) { $preg = '/^[a-zA-Z]\w{6,20}$/'; return (bool)preg_match($preg, $users); } #方法二 /** * 正則判定使用者名稱是否為中文 * @param [type] $truename 使用者名稱 * @return boolean 結果 */ function isName($truename) { // $preg = '/([\u4e00-\u9fa5]){2,4}/'; // $preg = '/^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,8}$/'; $preg = '/^[\x{4e00}-\x{9fa5}]{2,8}+$/u'; return (bool) preg_match($preg, $truename); }
2020年08月27日
方法持續更新中...