php正则判断中文字符
php教程正则判断中文字符
$str = "中国";
echo $str;
echo "<hr>";//if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) { //只能在gb2312情况下使用
if (preg_match("/^[x7f-xff]+$/", $str)) { //兼容gb2312,utf-8
echo "正确输入";
} else {
echo "错误输入";
}
?>
双字节字符编码范围
1. gbk (gb2312/gb18030)
x00-xff gbk双字节编码范围
x20-x7f ascii
xa1-xff 中文 gb2312
x80-xff 中文 gbk
2. utf-8 (unicode)
u4e00-u9fa5 (中文)
x3130-x318f (韩文
xac00-xd7a3 (韩文)
u0800-u4e00 (日文)
代码如下 | 复制代码 |
class validation{ function check_email($value){ //check a email address return (bool) preg_match('/^[a-z0-9._%+-]+@(?:[a-z0-9-]+.)+[a-z]{2,4}$/i', $value); } function check_ip($value){ //check a ip address return (bool) preg_match("/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){4}$/", $value."."); } function check_date($date, $format="dd/mm/yy"){ //check a date if(!preg_match("/([0-9]+)([./-])([0-9]+)(\2)([0-9]+)/", $date, $m)) return false; $f = explode("/", $format); $d[$f[0]] = $m[1]; $d[$f[1]] = $m[3]; $d[$f[2]] = $m[5]; return checkdate($d['mm'], $d['dd'], $d['yyyy'].$d['yy']); } function check_url($url){ //check a url return (bool) preg_match("/^(?:(?:ht|f)tp(?:s?)://|~/|/)?(?:(?:w+.)+)w+(?::d+)?(?:(?:/[^/?#]+)+)?/?(?:?[^?]*)?(#.*)?$/i", $url); } } |
//调用方法
代码如下 | 复制代码 |
$validation = new validation(); //检测邮箱 var_dump($validation->check_email("abc@abc.abc.com"));//true var_dump($validation->check_email("abc.abc@abc.com"));//false |
//ip检测
代码如下 | 复制代码 |
var_dump($validation->check_ip("127.0.0.1.0")); var_dump($validation->check_ip("256.0.0.1")); |
//日期格式检测
代码如下 | 复制代码 |
//true |
/*
此类的使用方法非常简单吧,只要创建类就可以轻松的验证邮箱,日期,地址,ip是否为合法的的哦。
*/
这是一款可以按时间日期来生成html类,他可以生成文件,同时也支持删除文件,删除目录,具有生成静态所有功能哦。
代码如下 | 复制代码 |
class html { var $dir; //dir for the htmls(www.111cn.net/) var $rootdir; //root of html files(www.111cn.net/):html var $name; //html文件存放路径 var $dirname; //指定的文件夹名称 var $url; //获取html文件信息的来源网页地址 var $time; //html文件信息填加时的时间 var $dirtype; //目录存放方式:year,month,,,, var $nametype; //html文件命名方式:name function html($nametype = 'name', $dirtype = 'year', $rootdir = 'html') { $this -> setvar($nametype, $dirtype, $rootdir); } function setvar($nametype = 'name', $dirtype = 'year', $rootdir = 'html') { $this -> rootdir = $rootdir; $this -> dirtype = $dirtype; $this -> nametype = $nametype; } function createdir($dir = '') { $this -> dir = $dir?$dir:$this -> dir; if (!is_dir($this -> dir)) { $temp = explode('/', $this -> dir); $cur_dir = ''; for($i = 0;$i < count($temp);$i++) { $cur_dir .= $temp[$i] . '/'; if (!is_dir($cur_dir)) { @mkdir($cur_dir, 0777); } } } } function getdir($dirname = '', $time = 0) { $this -> time = $time?$time:$this -> time; $this -> dirname = $dirname?$dirname:$this -> dirname; switch($this -> dirtype) { case 'name': if(empty($this -> dirname)) $this -> dir = $this -> rootdir; else $this -> dir = $this -> rootdir . '/' . $this -> dirname; break; case 'year': $this -> dir = $this -> rootdir . '/' . date("y", $this -> time); break; case 'month': $this -> dir = $this -> rootdir . '/' . date("y-m", $this -> time); break; case 'day': $this -> dir = $this -> rootdir . '/' . date("y-m-d", $this -> time); break; } $this -> createdir(); return $this -> dir; } function geturlname($url = '') { $this -> url = $url?$url:$this -> url; $filename = basename($this -> url); $filename = explode(".", $filename); return $filename[0]; } function geturlquery($url = '') { $this -> url = $url?$url:$this -> url; $durl = parse_url($this -> url); $durl = explode("&", $durl[query]); foreach($durl as $surl) { $gurl = explode("=", $surl); $eurl[] = $gurl[1]; } return join("_", $eurl); } function getname($url = '', $time = 0, $dirname = '') { $this -> url = $url?$url:$this -> url; $this -> dirname = $dirname?$dirname:$this -> dirname; $this -> time = $time?$time:$this -> time; $this -> getdir(); switch($this -> nametype) { case 'name': $filename = $this -> geturlname() . '.htm'; $this -> name = $this -> dir . '/' . $filename; break; case 'time': $this -> name = $this -> dir . '/' . $this -> time . '.htm'; break; case 'query': $this -> name = $this -> dir . '/' . $this -> geturlquery() . '.htm'; break; case 'namequery': $this -> name = $this -> dir . '/' . $this -> geturlname() . '-' . $this -> geturlquery() . '.htm'; break; case 'nametime': $this -> name = $this -> dir . '/' . $this -> geturlname() . '-' . $this -> time . '.htm'; break; } return $this -> name; } function createhtml($url = '', $time = 0, $dirname = '', $htmlname = '') { $this -> url = $url?$url:$this -> url; $this -> dirname = $dirname?$dirname:$this -> dirname; $this -> time = $time?$time:$this -> time; // 上面保证不重复地把变量赋予该类成员 if(empty($htmlname)) $this -> getname(); else $this -> name = $dirname . '/' . $htmlname; //得到name $content = file($this -> url) or die("failed to open the url " . $this -> url . " !");; // /////////////关键步---用file读取$this->url $content = join("", $content); $fp = @fopen($this -> name, "w") or die("failed to open the file " . $this -> name . " !"); if(@fwrite($fp, $content)) return true; else return false; fclose($fp); } // ///////////////以name为名字生成html function deletehtml($url = '', $time = 0, $dirname = '') { $this -> url = $url?$url:$this -> url; $this -> time = $time?$time:$this -> time; $this -> getname(); if(@unlink($this -> name)) return true; else return false; } /** * function::deletedir() * 删除目录 * * @param $file 目录名(不带/) * @return */ function deletedir($file) { if(file_exists($file)) { if(is_dir($file)) { $handle = opendir($file); while(false !== ($filename = readdir($handle))) { if($filename != "." && $filename != "..") $this -> deletedir($file . "/" . $filename); } closedir($handle); rmdir($file); return true; }else{ unlink($file); } } } } |
[ajax介绍]
ajax是使用客户端脚本与web服务器交换数据的web应用开发方法。web页面不用打断交互流程进行重新加裁,就可以动态地更新。使用ajax,用户可以创建接近本地桌面应用的直接、高可用、更丰富、更动态的web用户界面。
异步网页特效和xml(ajax)不是什么新技术,而是使用几种现有技术——包括级联样式表(css教程)、网页特效、xhtml、xml和可扩展样式语言转换(xslt),开发外观及操作类似桌面软件的web应用软件。
[ajax执行原理]
一个ajax交互从一个称为xmlhttprequest的javascript对象开始。如同名字所暗示的,它允许一个客户端脚本来执行http请求,并且将会解析一个xml格式的服务器响应。ajax处理过程中的第一步是创建一个xmlhttprequest实例。使用http方法(get或post)来处理请求,并将目标url设置到xmlhttprequest对象上。
当你发送http请求,你不希望浏览器挂起并等待服务器的响应,取而代之的是,你希望通过页面继续响应用户的界面交互,并在服务器响应真正到达后处理它们。要完成它,你可以向xmlhttprequest注册一个回调函数,并异步地派发xmlhttprequest请求。控制权马上就被返回到浏览器,当服务器响应到达时,回调函数将会被调用。
php父类与子类读取数据代码是一填二级分类的程序代码,该程序可以根据父的数据查找出其子类的数据哦。
代码如下 | 复制代码 |
function getsubcomments($parent = 0, $level = 0) { $sql = "..."; // 查询记录的sql $list = array(); // 先从数据得到记录集,再对记录添加level, 父层level = 0,它的下级level = 1,如此类推 $tmparr = getsubcomments($row->id, $level + 1); // 递归调用 return $list; $list = array(); // 按level分层次输出内容 echo $pre . '|- '; |
相关文章
js URLdecode()与urlencode方法支持中文解码
下面来介绍在js中来利用urlencode对中文编码与接受到数据后利用URLdecode()对编码进行解码,有需要学习的机友可参考参考。 代码如下 复制代码 ...2016-09-20- 本篇文章主要分享了通过window.navigator来判断浏览器及其版本信息的实例代码。具有一定的参考价值,下面跟着小编一起来看下吧...2017-01-23
- 这篇文章主要给大家介绍了一个关于JS正则匹配的踩坑记录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-04-13
- 使用 conditional comment 来判断 IE 的版本。嗯,是早早有人提出,但没有认真看代码。昨天刚好在看 CSS3 PIE 的时候看到,觉得是不是不靠谱。今天看到 Paul Irish 也提起,那么,推荐一下吧。这是作者博客上写的:复制代码 代码...2014-05-31
关于Mysql中文乱码问题该如何解决(乱码问题完美解决方案)
最近两天做项目总是被乱码问题困扰着,这不刚把mysql中文乱码问题解决了,下面小编把我的解决方案分享给大家,供大家参考,也方便以后自己查阅。首先:用show variables like “%colla%”;show varables like “%char%”;这两条...2015-11-24- 下面小编就为大家分享一篇c# 判断是否为空然后赋值的4种实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 这篇文章主要介绍了C#读取中文文件出现乱码的解决方法,涉及C#中文编码的操作技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
- 我们自己鼓捣mysql时,总免不了会遇到这个问题:插入中文字符出现乱码,虽然这是运维先给配好的环境,但是在自己机子上玩的时候咧,总得知道个一二吧,不然以后如何优雅的吹牛B。...2015-03-15
- 在debian环境下,彻底解决mysql无法插入和显示中文的问题Linux下Mysql插入中文显示乱码解决方案mysql -uroot -p 回车输入密码进入mysql查看状态如下:默认的是客户端和服务器都用了latin1,所以会乱码。解决方案:mysql>use...2013-10-04
- 一.mysql默认不支持中文,它的server和db默认是latin1编码.所以我们要将其改变为utf-8编码,因为utf-8包含了地球上大部分语言的二进制编码 1.关闭mysql服务 sudo /etc/init.d/mysql stop 2.修改mysql配置文件 mysql配...2015-10-21
- 具体详情请看下文小编给大家带来的知识点。同编写程序类似,存储过程中也有对应的条件判断,功能类似于if、switch。在MySql里面对应的是IF和CASE1、IF判断IF判断的格式是这样的:IF expression THEN commands [ELSEIF ex...2015-10-21
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
废话不多说了,直接给大家贴代码了。<?php class test{} $a1 = null; $a2 = ""; //$a3 = $a4 = 0; $a5 = '0'; $a6 = false; $a7 = array(); //var $a8; $a9 = new test(); for ($i=1; $i <=9 ; $i++) {...2015-11-24- 这篇文章主要介绍了java正则表达式判断前端参数修改表中另一个字段的值,需要的朋友可以参考下...2021-05-07
- 小编分享了一段简单的php中文转拼音的实现代码,代码简单易懂,适合初学php的同学参考学习。 代码如下 复制代码 <?phpfunction Pinyin($_String...2017-07-06
- 这篇文章主要介绍了C#判断一个字符串是否是数字或者含有某个数字的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了Java连接数据库oracle中文乱码解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-05-16
- 今天小编大家分享一篇C#获得程序的根目录以及判断文件是否存在的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 这篇文章主要介绍了JS基于正则截取替换特定字符之间字符串操作方法,结合具体实例形式分析了JS基于正则实现针对特殊字符、数字等字符串类型的截取操作相关技巧,需要的朋友可以参考下...2017-02-08
从PHP $_SERVER相关参数判断是否支持Rewrite模块
如果是http://www.jb51.net/p1141.html形式的URL,可通过$_SERVER['REQUEST_URI']和$_SERVER['QUERY_STRING']值的区别来分析,最主要是如果页面是通过重定向会产生$_SERVER['REDIRECT_QUERY_STRING']和$_SERVER['REDIREC...2013-10-04- 整体思路是这样的:判断div内部是否为空,如果为空,给出无数据提示;否则显示正常页面,下面给大家分享js判断div内容是否为空的方法,对判断div内容是否为空的相关知识感兴趣的朋友一起学习吧...2016-02-01