燕十八 公益PHP培训 课堂地址:YY频道88354001 学习社区:www.zixue.it  

php画图:比如说验证码,缩略图,加水印都要用到GD库,所以要开启gd2库,才能用

首先找到php.ini中extension=php_gd2.dll  去掉前边的分号,然后重启apache,创建图片就可以用了


  
  1.  

  
  1. /* 
  2.     画图的一般步骤: 
  3.     1.创建画布 
  4.     2.创建颜料 
  5.     3.画图或者写字 
  6.     4.保存 
  7.     5.销毁资源 
  8. */ 
//创建画布  $img=p_w_picpathcreatetruecolor(300,200);  //创建颜料  $bg=p_w_picpathcolorallocate($img,30,255,255);  //画布填充颜色  p_w_picpathfill($img,0,0,$bg);  //保存图片  if(p_w_picpathpng($img,'./01.png')){      echo "图片创建成功";  }  //销毁图片  p_w_picpathdestroy($img); 

简单验证码:

 


  
  1. //创建图片 
  2. $im = p_w_picpathcreatetruecolor(50, 30); 
  3.  
  4. // 将背景设为蓝色 
  5. $blue = p_w_picpathcolorallocate($im, 100, 255, 255); 
  6. //创建颜料 
  7. $imgcolor=p_w_picpathcolorallocate($im,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255)); 
  8. //填充背景颜色 
  9. p_w_picpathfill($im, 0, 0, $blue); 
  10.  
  11.  
  12. //画干扰线 
  13. for($i=0;$i<4;$i++){ 
  14.      
  15.      
  16.     p_w_picpathline($im,rand(0,20),0,100,rand(0,60),$imgcolor); 
  17.  
  18. //画噪点 
  19. for($i=0;$i<100;$i++){ 
  20.      
  21.     p_w_picpathsetpixel($im,rand(0,50),rand(0,30),$imgcolor); 
  22.  
  23. //写字符串 
  24. $str=substr(str_shuffle('ABCDEFGHIJKMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789'),0,4); 
  25.   
  26. p_w_picpathstring($im,4,10,10,$str,$imgcolor); 
  27.  
  28. //输出图片 
  29. header('content-type: p_w_picpath/png'); 
  30. p_w_picpathpng($im); 
  31. //销毁图片 
  32. p_w_picpathdestroy($im); 

验证码注意保存格式,utf8无bom格式,只保存为utf8的会出现乱码

输出随机验证码为: