マルチバイト文字CAPTCHAヘルパー
- ダウンロード
- md5ハッシュ
- インストール
マルチバイト文字CAPTCHAヘルパーは、CodeIgniterにデフォルトで備わっている
「CAPTCHAヘルパー」のマルチバイト文字対応版です。
日本語などのマルチバイト文字の「CAPTCHA」画像を生成することができるようになります。
使い方は、ほとんどCodeIgniterの「CAPTCHAヘルパー」と同様です。
ここでは、マルチバイト文字CAPTCHAヘルパー特有の設定方法などを説明しています。
マルチバイト文字CAPTCHAヘルパーの準備
フォントファイル
マルチバイト文字CAPTCHAヘルパーでは、フォントファイルの指定が必須となっています。
RedHat系のLinuxでのフォントファイルのインストールは以下のようにします。
# yum install ipa-gothic-fonts ipa-mincho-fonts
# yum install ipa-pgothic-fonts ipa-pmincho-fonts
フォントファイルは「/usr/share/fonts/」ディレクトリ配下に、拡張子「.ttf」としてインストールされます。
言語ファイル(文字プール)
CAPTCHA画像内に表現する文字列を指定せず、ランダムに取得する場合は、予め「文字プール」を
「application/third_party/info.ci-guide/language/[言語]/mb_captcha_lang.php」言語ファイルで
設定します。
- application/third_party/info.ci-guide/languages/japanese/mb_captcha_lang.php
$lang['pool'] = 'あいうえおかきくけこさしすせそ' . 'たちつてとなにぬねのはひふへほ' . 'まみむめもやゆよわをん';
この例では、日本語の「ひらがな」からランダムに文字列を取得できるように設定しています。
日本語以外のマルチバイト文字を取得するには、「application/third_party/info.ci-guide/languages/」ディレクトリに
対象の言語サブディレクトリを作成し、その言語ディレクトリに「mb_captcha_lang.php」を作成します。
パッケージパス
パッケージパスを「application/config/autoload.php」
自動ロード設定ファイルで設定するか、
「CI_Loader」コアクラスの「add_package_path()」
メソッドで「info.ci-guide」パッケージのパスを設定します。
- application/config/autoload.php
- add_package_path()
マルチバイト文字CAPTCHAヘルパーのロード
「 CI_Loader 」クラスの「 helper() 」メソッドでロードします。
マルチバイト文字CAPTCHAヘルパーの関数
mb_create_captcha($data = '', $img_path = '', $img_url = '', $font_path = '')
「CAPTCHAヘルパー」の 「create_captcha()」
関数の利用方法と同様になります。
詳しくは、CAPTCHAヘルパー」のページを参照してください。
- word:
- time:
- image:
NULL,
'images/captcha/',
'/images/captcha/',
'/usr/share/fonts/ipa-gothic/ipag.ttf'
);
print_r($mb_captcha);
/*
Array ( [word] => [time] => [image] => <img src="/images/captcha/.jpg" width="150" height="30" style="border:0;" alt=" " /> )*/
- word:
- time:
- image:
'word' => '日本語',
'img_path' => 'images/captcha/',
'img_url' => '/images/captcha/',
'font_path' => '/usr/share/fonts/ipa-gothic/ipag.ttf'
);
$mb_captcha = mb_create_captcha($data);