С композитором:
{
...
"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()
true
если OCR можно прочитать с помощью программного обеспечения ocrad
, вам необходимо включить 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 Framework: https://github.com/juliardi/yii2-captcha.
Эта библиотека находится под лицензией MIT, посмотрите файл LICENSE
.