仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1137|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网站制作之PHP 正则剖断中文 UTF-8 &GBK

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:51:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
那么接下来,这就算学会啦?NO,NO,NO,还早呢,你至尽还没碰过OOP之类的吧?模板呢?UTF-8婚配:在javascript中,要剖断字符串是中文是很俭朴的。好比:var str = "php编程";if (/^[\u4e00-\u9fa5]+$/.test(str)) {alert("该字符串全体是中文");} else{alert("该字符串不全体是中文");}php中,是用 ...   UTF-8婚配:
在javascript中,要剖断字符串是中文是很俭朴的。好比:
var str = "php编程";
if (/^[\u4e00-\u9fa5]+$/.test(str)) {
alert("该字符串全体是中文");
}
else{
alert("该字符串不全体是中文");
}
php中,是用\x暗示十六进制数据的。因而,变换成以下的代码:
$str = "php编程";
if (preg_match("/^[\x4e00-\x9fa5]+$/"$str)) {
print("该字符串全体是中文");
} else {
print("该字符串不全体是中文");
}
貌似不报错了,剖断的了局也正确,不外把$str换成“编程”两字,了局却仍是显示“该字符串不全体是中文”,看来如许的剖断仍是不敷正确。

网上只能找到婚配全角字符的正则: ^[\x80-\xff]*^/
[\u4e00-\u9fa5]可以婚配中文然而PHP又不撑持
能够还跟编码有关系,因而需求懂得一下形式修改符的相干常识.
在一篇《形式修改符》的文章中懂得到:
u (PCRE_UTF8)
此修改符启用了一个 PCRE 中与 Perl 不兼容的额定功效。形式字符串被当做 UTF-8。本修改符在 Unix 下自 PHP 4.1.0 起可用,在 win32 下自 PHP 4.2.3 起可用。
例子:
preg_match('/[\x{2460}-\x{2468}]/u' $str); 婚配 内码汉字
依照他供应的体例停止测试,代码以下:
$str = "php编程";
if (preg_match("/^[\x{2460}-\x{2468}]+$/u"$str)) {
print("该字符串全体是中文");
} else {
print("该字符串不全体是中文");
}
发明此次仍然对是不是为中文剖断变态。
不外,既然\x暗示的十六进制数据,为何和js里边供应的局限\x4e00-\x9fa5纷歧样呢?因而我就换成了下边的代码发明真的正确了:
$str = "php编程";
if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u"$str)) {
print("该字符串全体是中文");
} else {
print("该字符串不全体是中文");
}
晓得了php中utf-8编码下用正则表达式婚配汉字的终究正确表达式——/^[\x{4e00}-\x{9fa5}]+$/u,
参考以上文章写了以下一段测试代码(复制以下代码保留成.php文件)


输出字符(数字字母汉字下划线):


  
GBK:
preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/"$str); //GB2312汉字字母数字下划线正则表达式
实现固定数量的几张图片的上传;再如调试软件ZendStudio的使用,看了很多次老师的应用,但总感觉用的不顺手,不懂那么多的数据值,到底哪一个才是真正的问题所在;还有如数据库语句的封装,我只会用简单的函数来进行封装。
海妖 该用户已被删除
沙发
发表于 2015-2-5 12:13:04 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
简单生活 该用户已被删除
板凳
发表于 2015-2-5 16:15:21 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
蒙在股里 该用户已被删除
地板
发表于 2015-2-12 22:58:24 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
第二个灵魂 该用户已被删除
5#
发表于 2015-2-14 11:41:36 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
老尸 该用户已被删除
6#
发表于 2015-2-20 11:52:58 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
再见西城 该用户已被删除
7#
发表于 2015-2-27 14:41:23 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
飘灵儿 该用户已被删除
8#
发表于 2015-3-3 01:12:14 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
不帅 该用户已被删除
9#
发表于 2015-3-7 13:01:37 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
小妖女 该用户已被删除
10#
发表于 2015-3-15 05:53:02 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
兰色精灵 该用户已被删除
11#
发表于 2015-3-19 08:00:36 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
只想知道 该用户已被删除
12#
发表于 2015-3-27 13:10:05 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
admin 该用户已被删除
13#
发表于 2015-3-31 03:18:35 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
愤怒的大鸟 该用户已被删除
14#
 楼主| 发表于 2015-4-1 11:20:46 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
若相依 该用户已被删除
15#
发表于 2015-4-6 05:07:36 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
冷月葬花魂 该用户已被删除
16#
发表于 2015-4-11 11:29:26 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
因胸联盟 该用户已被删除
17#
发表于 2015-4-12 05:41:13 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
精灵巫婆 该用户已被删除
18#
发表于 2015-4-16 12:10:28 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
19#
发表于 2015-4-28 11:30:39 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
分手快乐 该用户已被删除
20#
发表于 2015-4-29 16:37:13 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 09:06

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表