zoukankan      html  css  js  c++  java
  • php笔记之GD库图片创建/简单验证码


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

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

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

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

    简单验证码

    //创建图片 
    $im = imagecreatetruecolor(50, 30); 
     
    // 将背景设为蓝色 
    $blue = imagecolorallocate($im, 100, 255, 255); 
    //创建颜料 
    $imgcolor=imagecolorallocate($im,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255)); 
    //填充背景颜色 
    imagefill($im, 0, 0, $blue); 
     
     
    //画干扰线 
    for($i=0;$i<4;$i++){ 
         
         
        imageline($im,rand(0,20),0,100,rand(0,60),$imgcolor); 
    } 
     
    //画噪点 
    for($i=0;$i<100;$i++){ 
         
        imagesetpixel($im,rand(0,50),rand(0,30),$imgcolor); 
    } 
     
    //写字符串 
    $str=substr(str_shuffle('ABCDEFGHIJKMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789'),0,4); 
      
    imagestring($im,4,10,10,$str,$imgcolor); 
     
    //输出图片 
    header('content-type: image/png'); 
    imagepng($im); 
    //销毁图片 
    imagedestroy($im); 
    

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

    输出随机验证码为:

  • 相关阅读:
    webpack 配置别名,解决 import 时路径查找麻烦的问题
    Vue 中 diff 算法后更新 DOM 的方法
    React Native 开发环境搭建
    JavaScript 堆排序详解
    JavaScript 快速排序详解
    websocket 心跳重连
    AJAX 请求后使用 JS 打开新标签页被阻止的解决方法
    auto.js环境搭建
    Mac os 创建pppoe拨号
    mac os IntelliJ IDEA搭建环境
  • 原文地址:https://www.cnblogs.com/wang1204/p/5570035.html
Copyright © 2011-2022 走看看