• 技术文章 >后端开发 >PHP问题

    php 验证码乱码怎么办

    藏色散人藏色散人2020-11-06 17:06:54原创561

    php验证码乱码的解决办法:首先确定要绘制的中文验证码文字 ;然后通过“imagettftext($im,12,3,20,20,$te,'msyhbd.ttf',$str);”方法解决乱码问题即可。

    推荐:《PHP视频教程

    php utf8页面验证码图片中文乱码

    在开发时出现uft-8页面中文验证码乱码了,在baidu搜索发现了原因,下面有解决办法有需要的朋友可以参考一下,代码如下: ? session_start(); //生成随机数 for ( $i =0; $i 4; $i ++){ $rand .= dechex (rand(1,15));

    在开发时出现uft-8页面中文验证码乱码了,在baidu搜索发现了原因,下面有解决办法有需要的朋友可以参考一下,代码如下:

    <? 
    session_start(); 
     
    //生成随机数 
    for($i=0;$i<4;$i++){ 
    $rand.=dechex(rand(1,15)); 
    } 
    $_SESSION['checkpic']=$rand; 
    $im=imagecreatetruecolor(100,30);//画板,新建一个真彩色图像 
    //设置颜色 
    $bg=imagecolorallocate($im,0,0,0);//红,绿,蓝 背景颜色 
    $te=imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,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,rand(0,100),30,$te2);//坐标(x1,y1)到坐标(x2,y2) 
    } 
    //画点 
    for($i=0;$i<200;$i++){ 
    imagesetpixel($im,rand()%100,rand()%30,$te2); 
    } 
     
    //输出中文 
    $str=iconv("gbk","utf-8","新年快乐!");//确定要绘制的中文文字 
    imagettftext($im,12,3,20,20,$te,'msyhbd.ttf','中文en'); 
    //把字符串写在图像左上角 
    //imagestring($im,5,rand(0,50),rand(0,15),$rand,$te); 
    //输出图像 
    header("Content-type:image/jpeg");//文件类型 
    imagejpeg($im); 
     
    ?>

    分析原因与解决办法,错误代码如下:

    $str=iconv("gbk","utf-8","新年快乐!");//确定要绘制的中文文字 
    imagettftext($im,12,3,20,20,$te,'msyhbd.ttf','中文en');

    正确的代码应该这样的:

    $str=iconv("gbk","utf-8","新年快乐!");//确定要绘制的中文文字 
    imagettftext($im,12,3,20,20,$te,'msyhbd.ttf',$str);

    以上就是php 验证码乱码怎么办的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:验证码 php
    上一篇:怎么给php安装curl扩展 下一篇:怎么安装memcache的php扩展?
    大前端线上培训班

    相关文章推荐

    • php显示不了验证码图片怎么办• php如何实现验证码的破解• TP5使用腾讯云发送短信验证码服务• php如何实现验证码的识别

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网