<?php /** * 数据验证类 */ class Validate { private $value; public function __construct($value) { $this->value = $value; } public function val() { return $this->value; } /** * 是否为空 * @return boolean [description] */ public function isEmpty() { return empty($this->value); } /** * 是否为数字 * @return boolean [description] */ public function isNumber() { return is_numeric($this->value); } /** * 是否为纯汉字 * @return boolean [description] */ public function isChina($charset = 'utf8') { return preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$this->value) ? true : false; } /** * 是否为邮箱 * @return boolean [description] */ public function isEmail() { return preg_match("/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/",$this->value) ? true : false; } /** * 是否为手机号 * @return boolean [description] */ public function isPhone() { return preg_match("/^(0|86|17951)?(13[0-9]|15[012356789]|1[78][0-9]|14[57])[0-9]{8}$/",$this->value) ? true : false; } /** * 是否为年份 格式:yyyy * @return boolean [description] */ public function isYear() { return preg_match("/^(\d{4})$/",$this->value) ? true : false; } /** * 是否为日期时间 格式:yyyy-mm-dd hh:ii:ss * @return boolean [description] */ public function isDateTime() { return preg_match("/^(\d{4})-(0?\d{1}|1[0-2])-(0?\d{1}|[12]\d{1}|3[01])\s(0\d{1}|1\d{1}|2[0-3]):[0-5]\d{1}:([0-5]\d{1})$/",$this->value) ? true : false; } /** * 是否为网址 * @return boolean [description] */ public function isUrl() { return preg_match("/\b(([\w-]+:\/\/?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|\/)))/",$this->value) ? true : false; } /** * 是否为身份证 * @return boolean [description] */ public function isIdCard() { return preg_match("/(^\d{15}$)|(^\d{17}([0-9]|X)$)/",$this->value) ? true : false; } /** * 是否为邮编 * @return boolean [description] */ public function emailCode() { return preg_match("/[1-9]\d{5}(?!\d)/",$this->value) ? true : false; } /** * 是否为IPv4 * @return boolean [description] */ public function isIP4() { return preg_match("/^(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))$/",$this->value) ? true : false; } /** * 是否为IPv6 * @return boolean [description] */ public function isIP6() { return preg_match("/^([\da-fA-F]{1,4}:){7}[\da-fA-F]{1,4}$/",$this->value) ? true : false; } }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。