對於一個嚴格的web開發流程來說,任何一個表單提交的動作都必須經過嚴格的格式驗證,不僅需要在用戶端進行js驗證,在伺服器端用程式進行二次驗證是必不可少的。
下面與大家分享一個php格式的伺服器端的表單欄位格式驗證的一個類。
具體的代碼如下:
/*
* author:www.scutephp.com
* time:2012-3-31 17:35:42
* function:php表單欄位格式驗證
*/
class verification{
//驗證字串長度是否在指定範圍內[這裡只驗證半形狀態下輸入的字元]
function fun_length($str,$min,$max){
return (strlen($str)>$max||strlen($str)<$min)?false:true;
}
//驗證是否為指定長度的字母/數字組合
function fun_text1($num1,$num2,$str){
return (preg_match("/^[a-za-z0-9]{".$num1.",".$num2."}$/",$str))?true:false;
}
//驗證是否為指定長度數字
function fun_text2($num1,$num2,$str){
return (preg_match("/^[0-9]{".$num1.",".$num2."}$/i",$str))?true:false;
}
//驗證是否為指定長度漢字
function fun_font($num1,$num2,$str){
return (preg_match("/^([\x81-\xfe][\x40-\xfe]){".$num1.",".$num2."}$/",$str))?true:false;
}
//驗證郵件地址
function fun_email($str){
return (preg_match('/^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}$/',$str))?true:false;
}
//驗證電話號碼
function fun_phone($str){
return (preg_match("/^1[358][0123456789]\d{8}$/",$str))?true:false;
}
//驗證手機號碼
function fun_mobile($str){
return (preg_match("/^(((d{3}))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}$/",$str))?true:false;
}
//驗證郵編
function fun_zip($str){
return (preg_match("/^[1-9]d{5}$/",$str))?true:false;
}
}
以上類的使用方法這裡就不再舉例說明了。