教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 php5中文图片验证码的制作方法

php5中文图片验证码的制作方法

发布时间:2017-08-04   编辑:jiaochengji.com
本文介绍下,php生成中文图片验证码的方法,分享下php 中文图片验证码的生成实例,有需要的朋友参考下。

在php中,生成中文图片格式的验证码,步骤如下:
1、image与header输出的介绍
2、imageline 与 imagesetpixel 函数  这是验证码中的噪点
3、imagettftext函数调用字体写入文字
4、PHP验证码插入中文的方法
 
参考之前的php 中文验证码的实现方法,实现了如下的中文图片验证码的雏形:
 

复制代码 代码示例:
<?php
//中文图片验证码
session_start();
for($i=0;$i<4;$i++){
 $rand.=dechex(rand(1,15));
}
$_SESSION[check_pic]=$rand;
$im=imagecreatetruecolor(100,30);
//设置颜色
$bg = imagecolorallocate($im,0,0,0);//第一次用时的背景颜色
$te = imagecolorallocate($im,255,255,255);//后面用的颜色
//划线条
for($i=0;$i<3;$i++);{
 $te2 = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
 imageline($im,rand(0,100),0,100,30,$te2);
 }
//把字符串写在图像左上角
imagestring($im,rand(3,6),rand(1,70),rand(1,10),$rand,$te);
//输出图像
header("Content-type: image/jpeg");
imagejpeg($im);
?>
 

修改后的最终版本:
 

复制代码 代码示例:
<?php
//中文图片验证码
session_start();
for($i=0;$i<4;$i++){
 $rand.=dechex(rand(1,15));
}
$_SESSION[check_pic]=$rand;
$im=imagecreatetruecolor(100,30);
//设置颜色
$bg = imagecolorallocate($im,0,0,0);//第一次用时的背景颜色
$te = imagecolorallocate($im,255,255,255);//后面用的颜色
//划线条
for($i=0;$i<3;$i++){
 $te2 = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
 imageline($im,rand(0,100),0,100,30,$te2);
 } // www.jbxue.com
 //点
 for($i=0;$i<200;$i++){
  imagesetpixel($im,rand()%100,rand()%30,$te2);
  }
  //转换为utf8,确定要绘制的中午文字
$str = iconv("GBK","UTF-8","新年快乐");
  //载入字体
 
  imagettftext($im,12,9,20,20,$te,'FZSTK.TTF',$str);
//把字符串写在图像左上角
//imagestring($im,rand(1,6),rand(3,70),rand(0,16),$rand,$te);
//输出图像
header("Content-type: image/jpeg");
imagejpeg($im);
?>

当然,这只是我的习作而已,更多php验证码的例子,大家可以参考php 验证码类以及php 图片验证码中的实现方法。
看看高手们是如何实现php验证码的。脚本小编祝大家学习进步。

您可能感兴趣的文章:
php5 图片验证码的实例代码
php验证码大全(实例分享)
php验证码的三个实例代码分享
php5中文图片验证码的制作方法
php图片验证码的例子
PHP制作条形码样式的验证码
php点击验证码实时刷新的实现代码
php5验证码类(简易实用型)
用php生成带有雪花背景的验证码
php验证码(GD库生成验证码)的例子

[关闭]
~ ~