The Captcha
element can be used with forms where authenticated users are not necessary, but you want to prevent spam submissions. It is pairs with one of the Zend/Form/View/Helper/Captcha/*
view helpers that matches the type of CAPTCHA adapter in use.
Basic Usage of Zend\Form\Element\Captcha
A CAPTCHA adapter must be attached in order for validation to be included in the element's input filter specification. See the section on Zend CAPTCHA Adapters <zend.captcha.adapters>
for more information on what adapters are available.
use Zend\Captcha;
use Zend\Form\Element;
use Zend\Form\Form;
$captcha = new Element\Captcha('captcha');
$captcha
->setCaptcha(new Captcha\Dumb())
->setLabel('Please verify you are human');
$form = new Form('my-form');
$form->add($captcha);
The following methods are in addition to the inherited methods of Zend\\Form\\Element
<zend.form.element.methods>
.
- setCaptcha
setCaptcha(array|Zend\Captcha\AdapterInterface $captcha)
Set the CAPTCHA adapter for this element. If
$captcha
is an array,Zend\Captcha\Factory::factory()
will be run to create the adapter from the array configuration.Returns
Zend\Form\Element\Captcha
- getCaptcha
getCaptcha()
Return the CAPTCHA adapter for this element.
Returns
Zend\Captcha\AdapterInterface
- getInputSpecification
getInputSpecification()
Returns a input filter specification, which includes a
Zend\Filter\StringTrim
filter, and a CAPTCHA validator.Returns array