この記事では、PHP でカプセル化された検証コード クラスのコード、原則、アイデアを共有します。非常にわかりやすく詳しく説明されています。必要な場合は参照してください。
検証コードは開発時によく使用される機能です。 PHP クラス プラグインとして使用する検証コード クラスをパッケージ化しました。これをすべての読者と共有したいと思います。
実装原理も非常にシンプルで、キャンバスのいくつかの機能といくつかの文字列の取得を使用して、それを組み合わせるだけです(笑)。
ここで私の考えを簡単に書かせてください。実際、このクラスは非常に明確にコメントされていますが、書く前にまだ長文にしたいと思います。
最初はいくつかの機能の説明です。ここでの説明は完全に個人的な経験です。間違いがあれば修正してください。
1. キャンバス関数の作成: imagecreatetruecolor(w,h);
説明: キャンバスを作成するために使用されます。
w キャンバスの幅
h キャンバスの高さ
この関数の戻り値 リソースクラス(gd)
2. キャンバスの色を作成します: imagecolorallocate(img,red,green,blue) )
説明:
img Canvas resource
red,green,blue 0~255の範囲です
3.キャンバスに背景色を追加します
imagefill(img,x,y,color) ;
説明:
image 画像の座標 x, y (画像の左上隅が 0, 0)
4. 境界線を描画します
Imagerectangle($img,x1,y1,x2 ,y2,color);
説明:
その左上隅の座標は x1, y1、右下隅の座標は x2, y2 です。画像の左上隅の座標は 0, 0 です。
3.描画内容(文字)
Imagestring(img, size, x, y, string, color); が起点です
Stringは描画する内容です
Colorは色です
4. ブラウザに画像形式を伝えますHeader("Content-type: image/png") は image/gif などです
5. 出力 (または保存)、2 番目のパラメータも使用できます保存するにはImagepng(img【,filename】)
Imagejpeg(img【,filename】)
Imagegif(img【,filename】)
6. 本質的には直線である干渉線を追加します
imageline(img,x1,y1,x2,y2,color);
/ x2,y2 終点 img Canvas
単位ピクセル 角度 angle🎈
アイデアは次のとおりです:最初にキャンバスが生成され、次に文字列、直線、ノイズ ポイント、境界線がキャンバスに追加されて検証コードが生成されます。クラスによって返される最後の 2 つのパブリック インターフェイスは次のとおりです。検証コードと外部で呼び出すことができる検証コードの生成 文字列合成の目的は、検証コードキャンバスを外部に出力し、検証用の文字列を保存することです。 最後に、他の人を誤解させないように、もう一度強調しておきます:
ここでは、最初にentryを使用して検証コードを生成し、次にverifyを使用して検証コード文字列を生成する必要があります。つまり、最初にentryを呼び出す必要があります。その後、verify を呼び出して検証コード文字列を生成できます。理由コードはすでに問題を説明しています。検証コードの文字列はエントリ メソッドの captchaImage メソッドで生成されるため、最初に呼び出す必要があります。場所によっては中国語フォントの要件が高く、中国語の確認コードをサポートしていない場所もあります
上記がこの記事の全内容です。皆様の学習に役立つことを願っています。
関連する推奨事項: ID 番号の正規化を実装するためのJavaScript+Regex
検証詳細な手順
カプセル化されたverification
コードクラスphp transfer メソッドと ajax メソッド
検証機能を実装するため
以上がPHPでカプセル化した検証コードクラスの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。