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中文網其他相關文章!