現在の位置: ホーム> 最新記事一覧> PHPを使用して、漢字をサポートし、ウェブサイトのセキュリティを改善する検証コード画像を生成する方法

PHPを使用して、漢字をサポートし、ウェブサイトのセキュリティを改善する検証コード画像を生成する方法

M66 2025-06-19

PHPを使用して、漢字をサポートする検証コード画像を生成する方法

インターネットの急速な発展により、検証コードは、ウェブサイトやアプリケーションで広く使用されている安全な認証方法になりました。従来の検証コードは主に英語のキャラクターと数字を使用していますが、漢字をサポートする検証コードが必要になる場合があります。この記事では、PHPを使用して漢字をサポートし、特定のコードの例を提供する検証コード写真を生成する方法を詳細に紹介します。

ステップ1:漢字セットを準備します

漢字をサポートする検証コード画像を生成するには、最初に漢字セットを準備する必要があります。ニーズに応じて、一般的な漢字セットを選択できます。この記事では、一般的に使用される漢字を選択して、検証コード文字セットとして配列に保存します。
 <?php
$chineseChars = array('1つ', '二', '三つ', '4', '五', '六', 'セブン', '八', '九', '10', '百', '千', '万', '1億', '空', '土地', '王', 'Zhao', 'お金', '太陽');
?>

ステップ2:ランダム検証コードを生成します

次に、検証コードコンテンツとして、漢字セットから特定の数の文字をランダムに選択する必要があります。この記事では、3文字の検証コードを生成するために選択します。以下は、ランダムな検証コードを生成するコード実装です。
 <?php
$code = ''; // 検証コードは空に初期化されます

for ($i = 0; $i < 3; $i++) {
    $index = mt_rand(0, count($chineseChars) - 1); // 文字をランダムに選択します
    $code .= $chineseChars[$index]; // スプライスされた文字
}
?>

ステップ3:検証コード画像を生成します

検証コード写真を生成するには、PHPのGDライブラリを使用する必要があります。まず、キャンバスを作成し、幅、高さ、背景色を設定します。次に、検証コードテキストをキャンバスに描画し、生成された画像をブラウザに出力するか、ファイルとして保存します。特定のコードは次のとおりです。
 <?php
$width = 120; // キャンバス幅
$height = 40; // キャンバスの高さ

// キャンバスを作成します
$image = imagecreate($width, $height);

// 背景色を設定します
$bgColor = imagecolorallocate($image, 255, 255, 255); // 白い背景

// 検証コードのテキスト色をランダムに選択します
$textColor = imagecolorallocate($image, mt_rand(0, 150), mt_rand(0, 150), mt_rand(0, 150));

// 中国のフォントパス
$fontFile = 'path/to/chinese_font.ttf';

// 検証コードテキストを描画します
imagettftext($image, 20, 0, 10, 30, $textColor, $fontFile, $code);

// ブラウザへの出力検証コード画像
header('Content-Type: image/png');
imagepng($image);

// 画像リソースを破壊します
imagedestroy($image);
?>

ステップ4:検証コード画像を使用します

検証コード画像を生成した後、登録、ログイン、パスワードの回復などのWebサイトのページに表示できます。ユーザーは、検証を完了するために検証コードを入力する必要があります。以下は、検証コード検証を実装するためのコードです。
 <?php
session_start();

// 確認コードを保存しますSession
$_SESSION['captcha'] = $code;
?>

次に、検証コードイメージをHTMLフォームに埋め込み、検証のために検証コードを入力できるようにします。

 <form action="verify.php" method="post">
    <input type="text" name="code" placeholder="確認コードを入力してください">
    <button type="submit">提出する</button>
</form>

要約します

この記事を通して、PHPを使用して漢字をサポートする検証コード画像を生成する方法を学びました。具体的な手順には、漢字セットの準備、ランダム検証コードの生成、GDライブラリを使用して検証コード画像を生成し、検証コードをWebサイトの登録またはログインページに適用することが含まれます。これらの簡単な手順を使用すると、Webサイトに検証コード検証機能を効果的に追加し、セキュリティを改善できます。