PHP网站制作之PHP 正则剖断中文 UTF-8 &GBK
那么接下来,这就算学会啦?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的使用,看了很多次老师的应用,但总感觉用的不顺手,不懂那么多的数据值,到底哪一个才是真正的问题所在;还有如数据库语句的封装,我只会用简单的函数来进行封装。 使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。 建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。 多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。 微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。 先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。 首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。 不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。 写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。 基础有没有对学习php没有太大区别,关键是兴趣。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 写的比较杂,因为我也是个新手,不当至于大家多多指正。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。 微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。 说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
页:
[1]