寒夜客来酒当茶——绿蚁新醅酒,红泥小火炉。火炉红时汤正沸,你说是酒还是茶? 落葭飞答夜瞳问

公告

最近一切安好,没有什么需要特别交待的。
2008/07/02

神啊,请赐给我智慧吧——学习PHP(一)

如果不是因为打算重建冰雪川,如果不是因为执念太深,我应该不会去深入了解PHP的。


其实架个论坛很容易,尤其是像 Discuz! 这种,制作出来的就是傻瓜式安装。虽然我极其讨厌DZ。

总是讨厌一些软件,一些流行的摆脱不了的软件,一如QQ、一如迅雷,一如 Discuz! 。之所以讨厌 Discuz! ,是因为看着它踩在XMB forum的基础上建立起来却无情的撇去XMB甚至不愿意让人知道它与XMB不得不说的关系。还有原因是因为它增加了许多功能,充满着功利性的功能,如商品,如道具,又正是我我认为冗余的东西。

但是无论多讨厌 Discuz! ,因为它流行,因为它傻瓜,所以不得不用。一如QQ、一如迅雷。


然后在MSN群上宣告:我们建个文库吧。

游游很奇怪地问:为什么?

狠也很奇怪地问:为什么?

我想啊想啊想啊想啊想——如果有了文库,我们就可以在文库上放广告了——这是什么逻辑——反正Adsense账号是现有的——上面的金额我愿意捐献给冰雪川作基金——目前大概不到RMB1元。

于是狠就很快乐地支持了。

狠在冰雪川充分表演着当家主母的气质——锱铢必较——所以快乐地支持收入可能等于零的广告并不是完全意料之外的啊。


文库程序之所以选择efiction,主要是在N个snarry站点的相似设计风格,当我联想到 Discuz!的流行,果然顺藤摸瓜找到了它的站点。

接着就很高兴地发现——它家是用语言包的——这样下载中文语言包就可以使用了。

然后就很郁闷地发现——它家竟然没有中文汉化语言包。

于是决定去汉化。需要汉化内容包括语言包2个文件+模板。不多,不比我的一篇翻译文字更多。

汉化是很无聊地时间,翻译还有语言和方法可以斟酌,汉化整句很少,所以更无聊。

汉化到一半,决定在本机安装一遍——立刻发现问题——注册用户不支持中文。

下面正式开始了PHP的磨练过程。

问题解决第一轮:解除对中文名注册的限制。


看源码,很容易找到了限制内容:

if(preg_match("!^[a-z0-9_ ]{3,30}$!i", $_POST['penname']))

很好,正则表达式。

于是Google搜索到虫子乱码评价的经典正则:^[A-Za-z\u4e00-\u9fa5][\w\u4e00-\u9fa5]*$

华丽丽地替换,华丽丽地结果——不能用。真的不能用,泪。

然后继续搜索,在一个日本的网站上搜到了,很不优雅美观的代码:[一-龠]

if(mb_ereg("!^([一-龠]|[A-Za-z0-9])+$)))

管它好看不好看,替换之——竟然成功了,这真是一个不真实的世界。


问题第一轮过关了吗?

没有——登录不了。

打开数据库一看——注册的用户名是乱码——于是折腾两天的正则表达式后,我再一次华丽丽地倒下了。


神啊,请赐于我智慧吧。

送上冰雪川地址:www.oooice.com

0 评论:

发表评论