php 生成随机验证码图片代码
php 生成随机验证码图片代码
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:

复制代码 代码如下:

<?php

/** 默认首页 **/

class DefaultController extends AppController

{

public function index() {

$len = 5;

$str = "ABCDEFGHIJKLNMPQRSTUVWXYZ123456789";

$im = imagecreatetruecolor ( 70, 20 );

$bgc = imagecolorallocate($im, 255, 255, 255);

$bgtxt = imagecolorallocate($im, 220, 220, 220);

//随机调色板

$colors = array(

imagecolorallocate($im, 255, 0, 0),

imagecolorallocate($im, 0, 200, 0),

imagecolorallocate($im, 0, 0, 255),

imagecolorallocate($im, 0, 0, 0),

imagecolorallocate($im, 255, 128, 0),

imagecolorallocate($im, 255, 208, 0),

imagecolorallocate($im, 98, 186, 245),

);

//填充背景色

imagefill($im, 0, 0, $bgc);

//随机获取数字

$verify = "";

while (strlen($verify) < $len) {

$i = strlen($verify);

$random = $str[rand(0, strlen($str))];

$verify .= $random;

//绘制背景文字

imagestring($im, 6, ($i*10)+3, rand(0,6), $random, $bgtxt);

//绘制主文字信息

imagestring($im, 6, ($i*10)+3, rand(0,6), $random, $colors[rand(0, count($colors)-1)]);

}

//添加随机杂色

for($i=0; $i<100; $i++) {

$color = imagecolorallocate($im, rand(50,220), rand(50,220), rand(50,220));

imagesetpixel($im, rand(0,70), rand(0,20), $color);

}

//将验证码存入$_SESSION中

sess("verify", $verify);

//输出图片并释放缓存

header('Content-type: image/png');

imagepng($im);

imagedestroy($im);

}

};

?>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类