On this page
Elements
DateTimeLocal
Laminas\Form\Element\DateTimeLocal is meant to be paired with the
FormDateTimeLocal helper for
HTML5 inputs with type "datetime-local".
This element adds filters and validators to its input filter specification in
order to validate a local datetime input value on the server.
Basic Usage
This element automatically adds a type attribute of value datetime-local.
use Laminas\Form\Element;
use Laminas\Form\Form;
$dateTimeLocal = new Element\DateTimeLocal('appointment-date-time');
$dateTimeLocal->setLabel('Appointment Date');
$dateTimeLocal->setAttributes([
'min' => '2010-01-01T00:00:00',
'max' => '2020-01-01T00:00:00',
'step' => '1', // minutes; default step interval is 1 min
]);
$dateTimeLocal->setOptions([
'format' => 'Y-m-d\TH:i',
]);
$form = new Form('my-form');
$form->add($dateTimeLocal);
Here is with the array notation:
use Laminas\Form\Element;
use Laminas\Form\Form;
$form = new Form('my-form');
$form->add([
'type' => Element\DateTimeLocal::class,
'name' => 'appointment-date-time',
'options' => [
'label' => 'Appointment Date',
'format' => 'Y-m-d\TH:i'
],
'attributes' => [
'min' => '2010-01-01T00:00:00',
'max' => '2020-01-01T00:00:00',
'step' => '1', // minutes; default step interval is 1 min
],
]);
Set all attributes before calling prepare
The
min,max, andstepattributes should be set prior to callingLaminas\Form::prepare(). Otherwise, the default input specification for the element may not contain the correct validation rules.
Public Methods
The following methods are specific to the DateTimeLocal element; all other methods
inherited from the parent DateTime class are also
available.
| Method signature | Description |
|---|---|
getInputSpecification() : array |
Returns an input filter specification, which includes Laminas\Filter\StringTrim and will add the appropriate validators based on the values from the min, max, and step attributes and format option. See the DateTime::getInputSpecification() definition for more information. |