這次帶給大家如何用正規完成表單驗證和檔案上傳驗證,用正規完成表單驗證和檔案上傳驗證的注意事項有哪些,下面就是實戰案例,一起來看一下。
表單正規驗證主要是用來對表單提交資訊的過濾,防止sql注入(例如登入介面),上傳的檔案也需要進行檔案名稱後綴和大小進行驗證,以下是一個簡單的表單驗證
header("Content-type:text/html;charset=utf-8"); $user = isset($_POST[‘user‘])?$_POST[‘user‘]:null; $password = isset($_POST[‘password‘])?$_POST[‘password‘]:null; $arr = array(‘png‘,‘gif‘,‘jpg‘); $uploads = move_uploaded_file($_FILES[‘face‘][‘tmp_name‘],‘uploads/‘.$_FILES[‘face‘][‘name‘]); $file = ‘uploads/‘.$_FILES[‘face‘][‘name‘]; if($uploads){ echo ‘上传成功‘; } if(!preg_match("/^[\x{4e00}-\x{9fa5}]+$/u", $user)){ //正则检查用户名是否为全汉字组成 echo "用户名只能由纯汉字组成!"; die; }else if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$password)){ //正则检查密码是否含有非法字符 echo ‘密码不能包含特殊字符!‘; die; }else if(!in_array(pathinfo($file, PATHINFO_EXTENSION),$arr)){ echo "文件格式不正确"; die; }else{ echo ‘允许注册!‘; }
附常用php正規表示式:
符合中國郵遞區號:[1-9]\d {5}(?!\d)
符合身分證:\d{15}|\d{18}
符合ip位址:\d+\.\d+\.\d+ \.\d+
符合網址URL的正規表示式:[a-zA-z]+://[^\s]*
符合Email位址的正規表示式:\ w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
符合中文字元的正規表示式: [\u4e00-\u9fa5]
函數:
preg_match():第一個參數為正規規則,第二個為被驗證的字串,傳回布林值
preg_replace ():對一個字串中附和正則規則的字元進行字元替換
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
#以上是如何用正規完成表單驗證和文件上傳驗證的詳細內容。更多資訊請關注PHP中文網其他相關文章!