Captcha
1.0.0
作曲家と:
{
...
"require" : {
"gregwar/captcha" : " 1.* "
}
}
CaptchaBuilder
を使用してキャプチャを作成できます。
<?php
use Gregwar Captcha CaptchaBuilder ;
$ builder = new CaptchaBuilder ;
$ builder -> build ();
その後、それをファイルに保存できます。
<?php
$ builder -> save ( ' out.jpg ' );
または、直接出力します。
<?php
header ( ' Content-type: image/jpeg ' );
$ builder -> output ();
または、HTML ページに直接インライン化します。
<img src=" <?php echo $ builder->inline(); ?> " />
コードを取得して、ユーザー入力と比較することができます。
<?php
// Example: storing the phrase in the session to test for the user
// input later
$ _SESSION [ ' phrase ' ] = $ builder -> getPhrase ();
フレーズをユーザー入力と比較できます。
if ( $ builder -> testPhrase ( $ userInput )) {
// instructions if user phrase is good
}
else {
// user phrase is wrong
}
これらの関数を使用できます。
build()
前に呼び出します。ocrad
ソフトウェアを使用して OCR を読み取ることができる場合にtrue
を返します。shell_exec を有効にし、imagemagick と ocrad をインストールする必要があります。ocrad
で読み取れなくなるまでコードをビルドします文字数を変更したい場合は、追加のパラメーターを使用してフレーズ ビルダーを直接呼び出すことができます。
use Gregwar Captcha CaptchaBuilder ;
use Gregwar Captcha PhraseBuilder ;
// Will build phrases of 3 characters
$ phraseBuilder = new PhraseBuilder ( 4 );
// Will build phrases of 5 characters, only digits
$ phraseBuilder = new PhraseBuilder ( 5 , ' 0123456789 ' );
// Pass it as first argument of CaptchaBuilder, passing it the phrase
// builder
$ captcha = new CaptchaBuilder ( null , $ phraseBuilder );
必要なフレーズをビルダーに直接渡すこともできます。
// Building a Captcha with the "hello" phrase
$ captcha = new CaptchaBuilder ( ' hello ' );
例を見たい場合は、 demo/form.php
を見てください。これは、 demo/session.php
を使用してキャプチャをレンダリングし、送信後にそれを確認します。
このキャプチャ ジェネレーターをパッケージ化した Symfony 2 バンドルを楽しむには、次のリポジトリを参照してください: https://github.com/Gregwar/CaptchaBundle
Yii2 フレームワークと統合するには、次の拡張機能を使用できます: https://github.com/juliardi/yii2-captcha
このライブラリは MIT ライセンスの下にありますLICENSE
ファイルを参照してください。