Input widget class for generating a set of radio buttons.
This class is usually used internally by Cake\View\Helper\FormHelper, it but can be used to generate standalone radio buttons.
string|nullPrefix for id attribute.
array<string>A list of id suffixes used in the current rendering.
Cake\View\Widget\LabelWidgetLabel instance.
Cake\View\StringTemplateStringTemplate instance.
array<string, mixed>Data defaults.
Constructor
Clear the stored ID suffixes.
Generate an ID suitable for use in an ID attribute.
Generate an ID attribute for an element.
Generate an ID suffix.
Disabled attribute detection.
Renders a single radio input and label.
Renders a label element for a given radio button.
Merge default values with supplied data.
Render a set of radio buttons.
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, Cake\View\Widget\LabelWidget $label)
Constructor
This class uses a few templates:
radio Used to generate the input for a radio button. Can use the following variables name, value, attrs.radioWrapper Used to generate the container element for the radio + input element. Can use the input and label variables.Cake\View\StringTemplate $templates Templates list.
Cake\View\Widget\LabelWidget $label Label widget instance.
_clearIds(): void
Clear the stored ID suffixes.
void_domId(string $value): string
Generate an ID suitable for use in an ID attribute.
string $value The value to convert into an ID.
string_id(string $name, string $val): string
Generate an ID attribute for an element.
Ensures that id's for a given set of fields are unique.
string $name The ID attribute name.
string $val The ID attribute value.
string_idSuffix(string $val): string
Generate an ID suffix.
Ensures that id's for a given set of fields are unique.
string $val The ID attribute value.
string_isDisabled(array<string, mixed> $radio, array|true|null $disabled): bool
Disabled attribute detection.
array<string, mixed> $radio Radio info.
array|true|null $disabled The disabled values.
bool_renderInput(string|int $val, array<string, mixed>|string $text, array<string, mixed> $data, Cake\View\Form\ContextInterface $context): string
Renders a single radio input and label.
string|int $val The value of the radio input.
array<string, mixed>|string $text The label text, or complex radio type.
array<string, mixed> $data Additional options for input generation.
Cake\View\Form\ContextInterface $context The form context
string_renderLabel(array<string, mixed> $radio, array<string, mixed>|string|false $label, string $input, Cake\View\Form\ContextInterface $context, bool $escape): string|false
Renders a label element for a given radio button.
In the future this might be refactored into a separate widget as other input types (multi-checkboxes) will also need labels generated.
array<string, mixed> $radio The input properties.
array<string, mixed>|string|false $label The properties for a label.
string $input The input widget.
Cake\View\Form\ContextInterface $context The form context.
bool $escape Whether to HTML escape the label.
string|falsemergeDefaults(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 set of radio buttons.
Data supports the following keys:
name - Set the input name.options - An array of options. See below for more information.disabled - Either true or an array of inputs to disable. When true, the select element will be disabled.val - A string of the option to mark as selected.label - Either false to disable label generation, or an array of attributes for all labels.required - Set to true to add the required attribute on all generated radios.idPrefix Prefix for generated ID attributes.array<string, mixed> $data The data to build radio buttons with.
Cake\View\Form\ContextInterface $context The current form context.
stringsecureFields(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>Prefix for id attribute.
string|nullA list of id suffixes used in the current rendering.
array<string>Label instance.
Cake\View\Widget\LabelWidgetStringTemplate instance.
Cake\View\StringTemplateData defaults.
array<string, mixed>
© 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.RadioWidget.html