-
- $authnum='';
- $ychar="0,1,2,3,4,5,6,7,8,9,A,B,C,D,E ,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";
- $list=explode( ",",$ychar);//分割関数
- for($i=0;$i<4;$i++){
- $randnum=rand(0,35);
- $authnum.=$list[$randnum ];//配列形式で出力
コードをコピー プライベート関数として定義された方法 2。
- private function createCheckCode()
- {
- for(i=0;icodeNum;i++)
- {
- number = rand(0,2);
- switch(数値)
- {
- case 0: rand_number = rand(48,57); Break;//数値
- case 1: rand_number = rand(65,90);break;//大文字
- case 2: rand_number = rand(97,122 );break;//小文字
- }
- $asc = sprintf("%c",rand_number);
- $asc_number = asc_number.asc;
- return
- }
方法 3 、ランダム シードを使用して PHP 検証コードを生成します。
srand(microtime()*100000);//タイマーと同等$string="abcdefghigklmnopqrstuvwxyz123456789"; for($i=0;$i<4;$i++) - {
- $new_number.=$string[rand(0,strlen($string)-1)];//配列を即時に生成
- }
- コードをコピー
方法 4,
for($i=0;$i<4;$i++) { $rand.=dechex(rand(1,15));//10 進数を 16 進数に変換します } - Copyコード
それでは、この記事の本題に移りましょう。
PHP GD ライブラリ: (画像処理画像を生成するための画像処理関数用の一連の IPI を提供します)
php で GD ライブラリを有効にします。php.ini 設定ファイルで、「;extension=php_gd2.dll」の「;」を削除します。
いくつかの GD ライブラリ関数の紹介:
1.imagecreatetruecolor(int x_size,int Y_size) 新しいトゥルー カラー イメージを作成します
2.imagecolorallocate(resource image,int red,int green,int blue) は、画像に色 (三原色) を割り当てます。
3.imagestring(resource,font,int x,int y,content,color) 描画関数 4.header("Content-type:image/jpeg") 出力関数phpのヘッダはphp5のヘッダを定義するアクションです。タイプ: 1、コンテンツ タイプ: xxxx/yyyy 2、場所: xxxx:yyyy/zzzz 3、ステータス: nnn xxxxxx xxxx/yyyy は、image/gif image/jpeg image などのコンテンツ ファイルのタイプを示します。 /png imagejpeg(), imagegif (),imagepang() 5.iamgeline(resource image,int x1,int y1,int x2,int y2,int color); 線画関数, (int x, int y) 開始座標
6.imagesetpixel(リソースイメージ,int x,int y,int color)描画ポイント関数
7.imagettftext(リソース画像,floatサイズ,float角度,int x,int y,int color,string fontfile,string text) フォント書き込み関数付き 8.iconv("gb2312","utf-8","string ") ;
//まず、テキストを UTF-8 形式に変換します。 PHP 検証コードを中国語に挿入する方法 ここでは、PHP 中国語検証コードを生成する方法を参照できます。
例 1、数字と文字コードをランダムに生成:
//che.php session_start(); for($i=0;$i<4;$i++) - {
- $rand.=dechex(rand(1, 15));
- }
- $_SESSION['check_num']=$rand;
- $image=imagecreatetruecolor(50,30);//初めてパレットを使用して、背景色
- $te=imagecolorallocate($im,255,255,255)
- imagestring($image,6,rand(0,20),$rand,$te); ();//画像「http://localhost/**.php」は、エラーがあり表示できないため検証コードを生成する必要があるため、PHP Webページに表示されます
- header("Content-type:image/ jpeg") ; imagejpeg($image);
- ?>
-
-
- コードをコピー
-
-
- 例 2、画像の干渉ライン コードを描画します。
-
for($i=0;$i<8;$i++)//複数の線を描画します{ $cg=imagecolorallocate($im,rand(0,255),rand(0,255) ),rand(0,255));//ランダムな色を生成します imageline($im,rand(10,40),0,rand(10,40),20,$cg); }- コードをコピーします
-
- 例 3、画像上に干渉点を描画するコード:
for($i=0;$i<80;$i++)//複数の点を描画します{ imagesetpixel($im,rand(0,40),rand( 0, 20),$cg); } - コードをコピー
例 4、画像コードにテキストを書き込む:
$str=array('i','i','pro','pro');//ストレージ表示漢字 - for($i= 0;$i<4;$i++)
- {
- $sss.=$str[rand(0,3)];//漢字をランダムに表示
- }
//$str = iconv("gb2312","utf-8",$str); //中国語の文字エンコード変換、私の場合は必要ないようです
- imagettftext($im,10,0,rand(5,60),rand (5,60) ,$te,"simhei.ttf",$sss);//
-
コードをコピー
0: フォントの傾き、"simhei.ttf":フォント スタイル。通常はディレクトリの下のルートに配置されます。
これで、PHP イメージ検証コードの作成プロセス全体が完了しました。スクリプト エディターは、この記事が gd ライブラリを使用して PHP 検証コードを生成するのに役立つことを願っています。
|