日期:2014-05-17  浏览次数:20462 次

ThinkPHP2.1 中文验证码

今天验证2.1手册中文验证码的时候,中文验证码显示不出来。

从网上翻阅资料才知道,原来是代码有问题,修改如下:

将 386行的

?????????? $codex = msubstr($code, $i, 1);

这里调用的msubstr函数是 String 类中的,所以应该修改为:

?????????? $codex = String::msubstr($code, $i, 1);

?

TP的bug还是不少的,想解决问题还是得看源码,学习框架就是一个学习规范的过程,一套规范学完,框架也就会使用了,真正想要提高解决问题的能力,必须研究源码。

	public function verify(){
		import("ORG.Util.Image");
		header("Content-Type:text/html; charset=utf-8");
		Image::GBVerify();
		//Image::GBVerify(4,'png',180,30,'simhei.ttf','verify');
	}

?使用之前将字体导入ORG/util下,默认的字体是'simhei.ttf',如果想要更换字体,将字体导入后,调用方法的时候修改参数即可。

?<img src="__URL__/Verify" onclick=""/>

参考:

http://blog.sina.com.cn/s/blog_643e09930100gwx2.html