PHP用GD库绘制图片,制作验证码浏览器不能输出
更新:HHH   时间:2023-1-7


1,代码如下:

<?php    

function fillRandomString(){

//生成验证码

$char = array_merge(range(0, 9),range("a", "z"),range("A", "Z"));

//讲字符串$char打乱

$luan = str_shuffle(implode("", $char));

//从字符串中随机取四位

return  substr($luan, 0,4 );

}

//创建画布

header('content-type:p_w_picpath/png');

$height = 20;

$width = 80;

$p_w_picpath = p_w_picpathcreate($width, $height);

$black = p_w_picpathcolorallocate($p_w_picpath, 0, 0, 0);

$white = p_w_picpathcolorallocate($p_w_picpath, 255, 255, 255);

//画图片矩形

p_w_picpathfilledrectangle($p_w_picpath, 1, 1, $width-2, $height-2, $white);

//填充字符串

p_w_picpathstring($p_w_picpath, 20, 20,  4, fillRandomString(), $black);

        //输出图片

p_w_picpathpng($p_w_picpath);

 

//销毁图片

p_w_picpathdestroy($p_w_picpath);


但是在浏览器上输出显示不了,原因是在向浏览器输出之前没有清理缓存

在header()之前加入代码 ob_clean();即可

返回web开发教程...