Spec-Zone.ru › Yii 2.0

Класс yii\captcha\Captcha

Все классы | Свойства | Методы | События
Наследование yii\captcha\Captcha » yii\widgets\InputWidget » yii\base\Widget » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable, yii\base\ViewContextInterface
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/captcha/Captcha.php

Captcha отображает изображение CAPTCHA и поле ввода для кода проверки, введённого пользователем.

Captcha используется совместно с yii\captcha\CaptchaAction для предоставления CAPTCHA — способа предотвращения спама на веб-сайтах.

Элемент изображения, отображаемый Captcha, будет показывать изображение CAPTCHA, сгенерированное действием, маршрут которого указан в $captchaAction. Это действие должно быть экземпляром yii\captcha\CaptchaAction.

Когда пользователь нажимает на изображение CAPTCHA, оно будет обновлено новым кодом CAPTCHA.

Можно использовать yii\captcha\CaptchaValidator для проверки соответствия введённого пользователем кода текущему коду проверки CAPTCHA.

Следующий пример показывает, как использовать этот виджет с атрибутом модели:

echo Captcha::widget([
    'model' => $model,
    'attribute' => 'captcha',
]);

Следующий пример будет использовать свойство name вместо:

echo Captcha::widget([
    'name' => 'captcha',
]);

Также можно использовать этот виджет в ActiveForm с помощью метода widget(), например, так:

<?= $form->field($model, 'captcha')->widget(\yii\captcha\Captcha::classname(), [
    // configure additional widget properties here
]) ?>

Публичные свойства

Свойство Тип Описание Определено в
$attribute string Атрибут модели, к которому связан этот виджет. yii\widgets\InputWidget
$autoIdPrefix string Префикс для автоматически сгенерированных идентификаторов виджета. yii\base\Widget
$behaviors yii\base\Behavior[] Список поведений, прикреплённых к этому компоненту yii\base\Component
$captchaAction string|array Маршрут действия, генерирующего изображения CAPTCHA. yii\captcha\Captcha
$counter integer Счётчик, используемый для генерации $id виджетов. yii\base\Widget
$field yii\widgets\ActiveField Активное поле ввода, которое инициирует отображение этого виджета. yii\widgets\InputWidget
$id string Идентификатор виджета. yii\base\Widget
$imageOptions array Атрибуты HTML для тега изображения CAPTCHA. yii\captcha\Captcha
$model yii\base\Model Модель данных, с которой связан этот виджет. yii\widgets\InputWidget
$name string Имя поля ввода. yii\widgets\InputWidget
$options array Атрибуты HTML для тега поля ввода. yii\captcha\Captcha
$stack yii\base\Widget[] Виджеты, которые в данный момент отображаются (не завершены). yii\base\Widget
$template string Шаблон для расположения тега изображения CAPTCHA и тега поля ввода. yii\captcha\Captcha
$value string Значение поля ввода. yii\widgets\InputWidget
$view yii\web\View Объект представления, который можно использовать для отображения представлений или файлов представления. yii\base\Widget
$viewPath string Директория, содержащая файлы представления для этого виджета. yii\base\Widget

Публичные методы

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после создания объекта путём клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в значение null. yii\base\Object
afterRun() Этот метод вызывается сразу после выполнения виджета. yii\base\Widget
attachBehavior() Прикрепляет поведение к этому компоненту. yii\base\Component
attachBehaviors() Прикрепляет список поведений к компоненту. yii\base\Component
beforeRun() Этот метод вызывается непосредственно перед выполнением виджета. yii\base\Widget
begin() Начинает выполнение виджета. yii\base\Widget
behaviors() Возвращает список поведений, по которым должен действовать этот компонент. yii\base\Component
canGetProperty() Возвращает значение, указывающее, можно ли считать свойство. yii\base\Object
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Object
checkRequirements() Проверяет, доступен ли графический движок для генерации изображений CAPTCHA. yii\captcha\Captcha
className() Возвращает полное имя этого класса. yii\base\Object
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
end() Завершает работу виджета. yii\base\Widget
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. yii\base\Component
getBehavior() Возвращает объект именованного поведения. yii\base\Component
getBehaviors() Возвращает все прикреплённые к этому компоненту поведения. yii\base\Component
getId() Возвращает идентификатор виджета. yii\base\Widget
getView() Возвращает объект представления, который можно использовать для рендеринга представлений или файлов представлений. yii\base\Widget
getViewPath() Возвращает каталог, содержащий файлы представлений для этого виджета. yii\base\Widget
hasEventHandlers() Возвращает значение, указывающее, есть ли обработчик, прикреплённый к указанному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует виджет. yii\captcha\Captcha
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Прикрепляет обработчик событий к событию. yii\base\Component
registerClientScript() Регистрирует необходимый JavaScript. yii\captcha\Captcha
render() Рендерит представление. yii\base\Widget
renderFile() Рендерит файл представления. yii\base\Widget
run() Рендерит виджет. yii\captcha\Captcha
setId() Устанавливает идентификатор виджета. yii\base\Widget
setView() Устанавливает объект представления, который будет использоваться этим виджетом. yii\base\Widget
trigger() Вызывает событие. yii\base\Component
widget() Создаёт экземпляр виджета и запускает его. yii\base\Widget

Защищённые методы

Метод Описание Определено в
getClientOptions() Возвращает параметры для виджета CAPTCHA JS. yii\captcha\Captcha
hasModel() yii\widgets\InputWidget

События

Событие Тип Описание Определено в
EVENT_AFTER_RUN yii\base\WidgetEvent Событие, генерируемое сразу после выполнения виджета. (доступно с версии 2.0.11) yii\base\Widget
EVENT_BEFORE_RUN yii\base\WidgetEvent Событие, генерируемое непосредственно перед выполнением виджета. (доступно с версии 2.0.11) yii\base\Widget
EVENT_INIT yii\base\Event Событие, которое генерируется при инициализации виджета через init(). (доступно с версии 2.0.11) yii\base\Widget

Подробное описание свойств

$captchaAction общедоступное свойство

Маршрут действия, который генерирует изображения CAPTCHA. Действие, представленное этим маршрутом, должно быть действием yii\captcha\CaptchaAction. Обратитесь к yii\helpers\Url::toRoute() за допустимыми форматами.

public string|array $captchaAction = 'site/captcha'

$imageOptions общедоступное свойство

Атрибуты HTML, которые должны быть применены к тегу изображения CAPTCHA.

См. также yii\helpers\Html::renderTagAttributes() для получения подробностей о том, как рендерятся атрибуты.

public array $imageOptions = []

$options общедоступное свойство

Атрибуты HTML для тега ввода.

См. также yii\helpers\Html::renderTagAttributes() для получения подробностей о том, как рендерятся атрибуты.

public array $options = ['class' => 'form-control']

$template общедоступное свойство

Шаблон для размещения тега изображения CAPTCHA и тега текстового поля ввода. В этом шаблоне токен {image} будет заменён фактическим тегом изображения, а {input} — тегом текстового поля.

public string $template = '{image} {input}'

Подробное описание методов

checkRequirements() public static метод

Проверяет наличие графического расширения для генерации изображений CAPTCHA.

Этот метод проверит наличие расширений ImageMagick и GD.

public static string checkRequirements ( )
return string

Имя графического расширения, либо "imagick", либо "gd".

throws yii\base\InvalidConfigException

если ни ImageMagick, ни GD не установлены.

getClientOptions() protected метод

Возвращает опции для виджета JS капчи.

protected array getClientOptions ( )
return array

Опции

init() public метод

Инициализирует виджет.

public void init ( )

registerClientScript() public метод

Регистрирует необходимый JavaScript.

public void registerClientScript ( )

run() public метод

Отображает виджет.

public void run ( )

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-captcha-captcha.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API