图片验证码的问题
程序员文章站
2024-02-02 12:13:40
...
一个简单的显示验证码的代码,代码如下。
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。应该是变量未定义,正确的应该怎么写。
都是可以的
另外因为PHP变量是弱类型,所以你定义成 $r = 0; 还是可以的
good luck
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
上一篇: ffmpeg-php的装配详解
下一篇: PHP Log时时查看小工具