为什么的代码报错

来源:2-5 验证码函数的封装及测试

flyhcm3532998

2017-07-13 14:57

<?php

header('content-type:text/html;charset=utf-8');

function getVerify($fontFile,$width=500,$height=60)

{

    $image= imagecreatetruecolor($width, $height);

    $rect_color=imagecolorallocate($image,255,0,0);

    imagerectangle($image,0,0,$width,$height,$rect_color);

    $rand_color=imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));

    $string=join('',array_merge(range('A','Z'),range('a','z'),range(1,9)));

    $len=4;

    $textWidth=imagefontwidth(20);

    $textHeight=imagefontheight(20);

    function getRandColor($image)

    {

        return imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));

    }

    for($i=0;$i<$len;$i++)

    {

        $size=  mt_rand(20,30);

        $angle= mt_rand(-20,20);

        $x=($width/$len)*$i+$textWidth;

        $y=mt_rand($height/2,$height-$textHeight);

        $fontFile='../font/consola.ttf';

        $rand_color=imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));

        $code1=str_shuffle($string);

        $code=$code1{0};

        imagettftext($image, $size, $angle,$x,$y,$rand_color,$fontFile,$code);

    }

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

    {

        imagesetpixel($image,mt_rand(0,$width),mt_rand(0,$height),getRandColor($image));

    }

    for($i=0;$i<5;$i++)

    {

        imageline($image,mt_rand(0,$width),mt_rand(0,$height), mt_rand(0,$width),mt_rand(0,$height), getRandColor($image));

    }

    for($i=0;$i<6;$i++)

    {

        imagearc($image, mt_rand(0,$width),mt_rand(0,$height), mt_rand(0,$width/2), mt_rand(0,$height/2), mt_rand(0,360),mt_rand(0,360),getRandColor($image));

    }

    header('content-type:image/jpeg');

    imagejpeg($image);

    imagedestroy($image);

}

getVerify();


写回答 关注

2回答

  • qq_看看_1
    2018-05-28 18:27:33

    有两个错误 第一个在function getVerify($fontFile='./fonts/consola.ttf',$width=500,$height=60) 应该给文字指定默认值 第二个错误 imagefilledrectangle() 函数书写错误

  • StephenIII
    2017-07-14 23:37:07

    $fontFile的值?

PHP进阶篇-GD库图像处理

想通过PHP中GD函数库灵活操作图像吗,点击学习本教程可以实现

10431 学习 · 69 问题

查看课程

相似问题