Input widget class for generating a date time input widget.
This class is usually used internally by Cake\View\Helper\FormHelper
, it but can be used to generate standalone date time inputs.
Cake\View\StringTemplate
Template instance.
array<string, mixed>
Step size for various input types.
array<string, mixed>
Data defaults.
array<string>
Formats for various input types.
Constructor.
Formats the passed date/time value into required string format.
Merge default values with supplied data.
Render a date / time form widget.
Returns a list of fields that need to be secured for this widget.
Set value for "maxlength" attribute if applicable.
Set value for "required" attribute if applicable.
Set value for "step" attribute if applicable.
__construct(Cake\View\StringTemplate $templates)
Constructor.
Cake\View\StringTemplate
$templates Templates list.
formatDateTime(DateTime|string|int|null $value, array<string, mixed> $options): string
Formats the passed date/time value into required string format.
DateTime|string|int|null
$value Value to deconstruct.
array<string, mixed>
$options Options for conversion.
string
InvalidArgumentException
mergeDefaults(array<string, mixed> $data, Cake\View\Form\ContextInterface $context): array<string, mixed>
Merge default values with supplied data.
array<string, mixed>
$data Data array
Cake\View\Form\ContextInterface
$context Context instance.
array<string, mixed>
render(array<string, mixed> $data, Cake\View\Form\ContextInterface $context): string
Render a date / time form widget.
Data supports the following keys:
name
The name attribute.val
The value attribute.escape
Set to false to disable escaping on all attributes.type
A valid HTML date/time input type. Defaults to "datetime-local".timezone
The timezone the input value should be converted to.step
The "step" attribute. Defaults to 1
for "time" and "datetime-local" type inputs. You can set it to null
or false
to prevent explicit step attribute being added in HTML.format
A date()
function compatible datetime format string. By default, the widget will use a suitable format based on the input type and database type for the context. If an explicit format is provided, then no default value will be set for the step
attribute, and it needs to be explicitly set if required.All other keys will be converted into HTML attributes.
array<string, mixed>
$data The data to build a file input with.
Cake\View\Form\ContextInterface
$context The current form context.
string
secureFields(array<string, mixed> $data): array<string>
Returns a list of fields that need to be secured for this widget.
array<string, mixed>
$data array<string>
setMaxLength(array<string, mixed> $data, Cake\View\Form\ContextInterface $context, string $fieldName): array<string, mixed>
Set value for "maxlength" attribute if applicable.
array<string, mixed>
$data Data array
Cake\View\Form\ContextInterface
$context Context instance.
string
$fieldName Field name.
array<string, mixed>
setRequired(array<string, mixed> $data, Cake\View\Form\ContextInterface $context, string $fieldName): array<string, mixed>
Set value for "required" attribute if applicable.
array<string, mixed>
$data Data array
Cake\View\Form\ContextInterface
$context Context instance.
string
$fieldName Field name.
array<string, mixed>
setStep(array<string, mixed> $data, Cake\View\Form\ContextInterface $context, string $fieldName): array<string, mixed>
Set value for "step" attribute if applicable.
array<string, mixed>
$data Data array
Cake\View\Form\ContextInterface
$context Context instance.
string
$fieldName Field name.
array<string, mixed>
Template instance.
Cake\View\StringTemplate
Step size for various input types.
If not set, defaults to browser default.
array<string, mixed>
Data defaults.
array<string, mixed>
Formats for various input types.
array<string>
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.View.Widget.DateTimeWidget.html