>  기사  >  백엔드 개발  >  图片验证码的问题

图片验证码的问题

WBOY
WBOY원래의
2016-06-23 14:24:46740검색

一个简单的显示验证码的代码,代码如下。 
for($i=0;$i  {
 $r.=dechex(rand(1,15));
 }

$im=imagecreatetruecolor(100,30);
$bg=imagecolorallocate($im,0,0,0);//第一次调用时,背景颜色。
$te=imagecolorallocate($im,255,255,255);
imagestring($im,5,0,0,$r,$te);

header("content-type:image/jpeg");
imagejpeg($im);

图片显示不显示,如果把$r.=dechex(rand(1,15))的.去掉,图片显示,但只有一位数字。

有错误信息:Undefined variable: r。应该是变量未定义,正确的应该怎么写。


回复讨论(解决方案)

$r = '';
for($i=0;$i  {
 $r.=dechex(rand(1,15));
 }

把$r设个字符初值,这样在下面中就可以当做字符连接使用

有错误信息:Undefined variable: r。应该是变量未定义,正确的应该怎么写。

---------------------------------
那就定义下变量嘛

dechex() 函数把十进制转换为十六进制。

返回类型是 字符串类型

所以 

$r = null;或者$r = '';


都是可以的

另外因为PHP变量是弱类型,所以你定义成 $r = 0; 还是可以的

good luck

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.