//邮箱验证
function isEmail($email) {
if (!$email) {
return false;
}
return preg_match(‘/^[_\.0-9a-z-][email protected]([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}$/‘, $email);
}
// 手机号验证
function isMobile($mobile) {
if (!$mobile) {
return false;
}
return preg_match(‘/^((\(d{2,3}\))|(\d{3}\-))?1(3|5|8|9)\d{9}$/‘, $mobile);
}
// 邮编验证
function isPostalCode($postalCode) {
if (!$postalCode) {
return false;
}
return preg_match("/^[1-9]\d{5}$/", $postalCode);
}
// ip验证
function isIPAddress($IPAddress) {
if (!$IPAddress) {
return false;
}
return preg_match("/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])" .
"(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/", $IPAddress);
}
// 身份证验证
function isIDCard($IDCard) {
if (!$IDCard) {
return false;
}
return preg_match(‘/(^([\d]{15}|[\d]{18}|[\d]{17}x)$)/‘, $IDCard);
}
/**
* 检查中文
* @param string $str 标签字符串
*/
function isCn($str){
if(preg_match("/[\x{4e00}-\x{9fa5}]+/u", $str)) {
return true;
}
return false;
}
/**
* 检查数字
* @param string $str 标签字符串
*/
function isNumber($str){
if(preg_match(‘/^\d+$/‘, $str)) {
return true;
}
return false;
}
/**
* 检查是否每位相同
* @param string $str 标签字符串
*/
function isNumSame($str){
if(preg_match(‘/^(\w)\1+$/‘, $str)) {
return true;
}
return false;
}
/**
* 检查是否为空
* @param string $str 标签字符串
*/
function isEmpty($str){
//$str = trim($str);
if(preg_match(‘/^\s*$/‘, $str)) {
return true;
}
return false;
}
/**
* 检测是否为合法url
*/
function isUrl($url){
if(strpos(‘kkk‘ . $url, ‘http‘)){
return true;
}
return false;
}
// 检测一组字符是否有可能组成手机号码
function willMobile($mobile) {
if (!$mobile) {
return false;
}
return preg_match(‘/^((\(d{2,3}\))|(\d{3}\-))?1(3|5|8|9)\d{0,9}$/‘, $mobile);
}
function isPhoneNumber($phone) {
if (!$phone) {
return false;
}
echo($phone);
return preg_match(‘/^((0\d{3}[\-])?\d{7}|(0\d{2}[\-])?\d{8})?$/‘, $phone);
}
function isAreaCode($code){
if (!$code) {
return false;
}
return preg_match(‘/^(0\d{3})|(0\d{2})$/‘, $code);
}
/**
* 参数验证
* @param $para 数据
* @param $standard 参数要求
* @return boolen
*/
public static function verifyParams($para, $standard)
{
if ($para === false || empty($para)) {
return false;
}
foreach ($standard[‘REQUIRED‘] as $k => $v) {
if (!array_key_exists($k, $para)) {
return false;
}
if(empty($para[$k])){
return false;
}
if (‘string‘ == $v) {
if (false === is_string($para[$k])) {
return false;
}
} else if (‘int‘ == $v) {
if ((string)((int)($para[$k])) != $para[$k]) {
return false;
}
} else{
return false;
}
}
foreach ($standard[‘OPTIONAL‘] as $k => $v) {
if (!array_key_exists($k, $para)) {
continue;
}
if (‘string‘ == $v) {
if (!empty($para[$k]) && false === is_string($para[$k])) {
return false;
}
} else if (‘int‘ == $v) {
if (!empty($para[$k]) && (string)((int)($para[$k])) != $para[$k]) {
return false;
}
} else {
return false;
}
}
return true;
}
原文地址:https://www.cnblogs.com/xingxia/p/php_validate.html