运行没有报错,但是不显示图片
<?php
/**
* @param integer $width 宽度
* @param integer $[height] [高度]
* @param integer $[type] [1为纯数字,2为大小写字母,3为字母数字混合]
* @param integer $[length] [输出的验证码数量]
* @return string [验证码字符串]
*/
//封装一个验证码函数
function test_session($width=100,$height=30,$type=3,$length=4){
//先设定一个画布资源/颜色并覆盖,这是底色图片
$image=imagecreatetruecolor($width, $height);
$white=imagecolorallocate($image, 255, 255, 255);
imagefilledrectangle($image, 0, 0, $width, $height, $white);
switch ($type) {
case 1:
//array_rand是随机返回($length)个数组中的键/下标值
$str=join('',array_rand(range(0,9),$length));
break;
case 2:
//array_merge是合并数组
$str=join('',array_rand(array_flip(array_merge(range('a','z'),range('A','Z'))),$length));
break;
case 3:
//array_flip是交换数组的下标和值
$str=join('',array_rand(array_flip(array_merge(range('a','z'),range('A','Z'),range(0,9))),$length));
break;
}
//设置字体
$fize='D:\wamp64\www\project01\session.test.php\STXINGKA.TTF';
//设定一个随机颜色数组
function colorrand($image){
return imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
}
for ($i=1; $i <$length ; $i++) {
imagefttext($image,16, mt_rand(-30,30),($width/$length)*$i, mt_rand($height-15,+15), colorrand($image),$fize,$str);
}
//设置干扰点
for($i=1;$i<200;$i++){
imagesetpixel($image, mt_rand(0,$width), mt_rand(0,$height), colorrand($image));
}
header('Conten-Type:image/png');
imagepng($image);
imagedestroy($image);
return $str;
}
?>
以上是我敲的代码,望指点,谢谢~!