class FormBuilder extends FormConfigBuilder implements IteratorAggregate, FormBuilderInterface
A builder for creating {@link Form} instances.
protected bool | $locked | from FormConfigBuilder |
__construct(string|int $name, string|null $dataClass, EventDispatcherInterface $dispatcher, FormFactoryInterface $factory, array $options = array()) Creates an empty form configuration. | ||
$this | addEventListener(string $eventName, callable $listener, int $priority = 0) Adds an event listener to an event on this form. | from FormConfigBuilder |
$this | addEventSubscriber(EventSubscriberInterface $subscriber) Adds an event subscriber for events on this form. | from FormConfigBuilder |
$this | addViewTransformer(DataTransformerInterface $viewTransformer, bool $forcePrepend = false) Appends / prepends a transformer to the view transformer chain. | from FormConfigBuilder |
$this | resetViewTransformers() Clears the view transformers. | from FormConfigBuilder |
$this | addModelTransformer(DataTransformerInterface $modelTransformer, bool $forceAppend = false) Prepends / appends a transformer to the normalization transformer chain. | from FormConfigBuilder |
$this | resetModelTransformers() Clears the normalization transformers. | from FormConfigBuilder |
EventDispatcherInterface | getEventDispatcher() Returns the event dispatcher used to dispatch form events. | from FormConfigBuilder |
string | getName() Returns the name of the form used as HTTP parameter. | from FormConfigBuilder |
PropertyPathInterface|null | getPropertyPath() Returns the property path that the form should be mapped to. | from FormConfigBuilder |
bool | getMapped() Returns whether the form should be mapped to an element of its parent's data. | from FormConfigBuilder |
bool | getByReference() Returns whether the form's data should be modified by reference. | from FormConfigBuilder |
bool | getInheritData() Returns whether the form should read and write the data of its parent. | from FormConfigBuilder |
bool | getCompound() Returns whether the form is compound. | from FormConfigBuilder |
ResolvedFormTypeInterface | getType() Returns the form types used to construct the form. | from FormConfigBuilder |
DataTransformerInterface[] | getViewTransformers() Returns the view transformers of the form. | from FormConfigBuilder |
DataTransformerInterface[] | getModelTransformers() Returns the model transformers of the form. | from FormConfigBuilder |
DataMapperInterface|null | getDataMapper() Returns the data mapper of the form. | from FormConfigBuilder |
bool | getRequired() Returns whether the form is required. | from FormConfigBuilder |
bool | getDisabled() Returns whether the form is disabled. | from FormConfigBuilder |
bool | getErrorBubbling() Returns whether errors attached to the form will bubble to its parent. | from FormConfigBuilder |
mixed | getEmptyData() Returns the data that should be returned when the form is empty. | from FormConfigBuilder |
array | getAttributes() Returns additional attributes of the form. | from FormConfigBuilder |
bool | hasAttribute(string $name) Returns whether the attribute with the given name exists. | from FormConfigBuilder |
mixed | getAttribute(string $name, mixed $default = null) Returns the value of the given attribute. | from FormConfigBuilder |
mixed | getData() Returns the initial data of the form. | from FormConfigBuilder |
string|null | getDataClass() Returns the class of the form data or null if the data is scalar or an array. | from FormConfigBuilder |
bool | getDataLocked() Returns whether the form's data is locked. | from FormConfigBuilder |
FormFactoryInterface | getFormFactory() Returns the form factory used for creating new forms. | from FormConfigBuilder |
string | getAction() Returns the target URL of the form. | from FormConfigBuilder |
string | getMethod() Returns the HTTP method used by the form. | from FormConfigBuilder |
RequestHandlerInterface | getRequestHandler() Returns the request handler used by the form. | from FormConfigBuilder |
bool | getAutoInitialize() Returns whether the form should be initialized upon creation. | from FormConfigBuilder |
array | getOptions() Returns all options passed during the construction of the form. | from FormConfigBuilder |
bool | hasOption(string $name) Returns whether a specific option exists. | from FormConfigBuilder |
mixed | getOption(string $name, mixed $default = null) Returns the value of a specific option. | from FormConfigBuilder |
$this | setAttribute(string $name, mixed $value) Sets the value for an attribute. | from FormConfigBuilder |
$this | setAttributes(array $attributes) Sets the attributes. | from FormConfigBuilder |
$this | setDataMapper(DataMapperInterface $dataMapper = null) Sets the data mapper used by the form. | from FormConfigBuilder |
$this | setDisabled(bool $disabled) Set whether the form is disabled. | from FormConfigBuilder |
$this | setEmptyData(mixed $emptyData) Sets the data used for the client data when no value is submitted. | from FormConfigBuilder |
$this | setErrorBubbling(bool $errorBubbling) Sets whether errors bubble up to the parent. | from FormConfigBuilder |
$this | setRequired(bool $required) Sets whether this field is required to be filled out when submitted. | from FormConfigBuilder |
$this | setPropertyPath(string|PropertyPathInterface|null $propertyPath) Sets the property path that the form should be mapped to. | from FormConfigBuilder |
$this | setMapped(bool $mapped) Sets whether the form should be mapped to an element of its parent's data. | from FormConfigBuilder |
$this | setByReference(bool $byReference) Sets whether the form's data should be modified by reference. | from FormConfigBuilder |
$this | setInheritData(bool $inheritData) Sets whether the form should read and write the data of its parent. | from FormConfigBuilder |
$this | setCompound(bool $compound) Sets whether the form should be compound. | from FormConfigBuilder |
$this | setType(ResolvedFormTypeInterface $type) Set the types. | from FormConfigBuilder |
$this | setData(mixed $data) Sets the initial data of the form. | from FormConfigBuilder |
$this | setDataLocked(bool $locked) Locks the form's data to the data passed in the configuration. | from FormConfigBuilder |
setFormFactory(FormFactoryInterface $formFactory) Sets the form factory used for creating new forms. | from FormConfigBuilder | |
$this | setAction(string $action) Sets the target URL of the form. | from FormConfigBuilder |
$this | setMethod(string $method) Sets the HTTP method used by the form. | from FormConfigBuilder |
$this | setRequestHandler(RequestHandlerInterface $requestHandler) Sets the request handler used by the form. | from FormConfigBuilder |
$this | setAutoInitialize(bool $initialize) Sets whether the form should be initialized automatically. | from FormConfigBuilder |
FormConfigInterface | getFormConfig() Builds and returns the form configuration. | |
static | validateName(string|int $name) Validates whether the given variable is a valid form name. | from FormConfigBuilder |
static bool | isValidName(string $name) Returns whether the given variable contains a valid form name. | from FormConfigBuilder |
FormBuilderInterface | add(string|int|FormBuilderInterface $child, string|null $type = null, array $options = array()) Adds a new field to this group. A field must have a unique name within the group. Otherwise the existing field is overwritten. | |
FormBuilderInterface | create(string $name, string|null $type = null, array $options = array()) Creates a form builder. | |
FormBuilderInterface | get(string $name) Returns a child by name. | |
FormBuilderInterface | remove(string $name) Removes the field with the given name. | |
bool | has(string $name) Returns whether a field with the given name exists. | |
array | all() Returns the children. | |
count() {@inheritdoc} | ||
FormInterface | getForm() Creates the form. | |
FormBuilderInterface[] | getIterator() {@inheritdoc} |
Creates an empty form configuration.
string|int | $name | The form name |
string|null | $dataClass | The class of the form's data |
EventDispatcherInterface | $dispatcher | The event dispatcher |
FormFactoryInterface | $factory | |
array | $options | The form options |
InvalidArgumentException | if the data class is not a valid class or if the name contains invalid characters |
Adds an event listener to an event on this form.
string | $eventName | The name of the event to listen to |
callable | $listener | The listener to execute |
int | $priority | The priority of the listener. Listeners with a higher priority are called before listeners with a lower priority. |
$this | The configuration object |
Adds an event subscriber for events on this form.
EventSubscriberInterface | $subscriber |
$this | The configuration object |
Appends / prepends a transformer to the view transformer chain.
The transform method of the transformer is used to convert data from the normalized to the view format. The reverseTransform method of the transformer is used to convert from the view to the normalized format.
DataTransformerInterface | $viewTransformer | |
bool | $forcePrepend | If set to true, prepend instead of appending |
$this | The configuration object |
Clears the view transformers.
$this | The configuration object |
Prepends / appends a transformer to the normalization transformer chain.
The transform method of the transformer is used to convert data from the model to the normalized format. The reverseTransform method of the transformer is used to convert from the normalized to the model format.
DataTransformerInterface | $modelTransformer | |
bool | $forceAppend | If set to true, append instead of prepending |
$this | The configuration object |
Clears the normalization transformers.
$this | The configuration object |
Returns the event dispatcher used to dispatch form events.
EventDispatcherInterface | The dispatcher |
Returns the name of the form used as HTTP parameter.
string | The form name |
Returns the property path that the form should be mapped to.
PropertyPathInterface|null | The property path |
Returns whether the form should be mapped to an element of its parent's data.
bool | Whether the form is mapped |
Returns whether the form's data should be modified by reference.
bool | Whether to modify the form's data by reference |
Returns whether the form should read and write the data of its parent.
bool | Whether the form should inherit its parent's data |
Returns whether the form is compound.
This property is independent of whether the form actually has children. A form can be compound and have no children at all, like for example an empty collection form.
bool | Whether the form is compound |
Returns the form types used to construct the form.
ResolvedFormTypeInterface | The form's type |
Returns the view transformers of the form.
DataTransformerInterface[] | An array of {@link DataTransformerInterface} instances |
Returns the model transformers of the form.
DataTransformerInterface[] | An array of {@link DataTransformerInterface} instances |
Returns the data mapper of the form.
DataMapperInterface|null | The data mapper |
Returns whether the form is required.
bool | Whether the form is required |
Returns whether the form is disabled.
bool | Whether the form is disabled |
Returns whether errors attached to the form will bubble to its parent.
bool | Whether errors will bubble up |
Returns the data that should be returned when the form is empty.
mixed | The data returned if the form is empty |
Returns additional attributes of the form.
array | An array of key-value combinations |
Returns whether the attribute with the given name exists.
string | $name | The attribute name |
bool | Whether the attribute exists |
Returns the value of the given attribute.
string | $name | The attribute name |
mixed | $default | The value returned if the attribute does not exist |
mixed | The attribute value |
Returns the initial data of the form.
mixed | The initial form data |
Returns the class of the form data or null if the data is scalar or an array.
string|null | The data class or null |
Returns whether the form's data is locked.
A form with locked data is restricted to the data passed in this configuration. The data can only be modified then by submitting the form.
bool | Whether the data is locked |
Returns the form factory used for creating new forms.
FormFactoryInterface | The form factory |
Returns the target URL of the form.
string | The target URL of the form |
Returns the HTTP method used by the form.
string | The HTTP method of the form |
Returns the request handler used by the form.
RequestHandlerInterface | The request handler |
Returns whether the form should be initialized upon creation.
bool | returns true if the form should be initialized when created, false otherwise |
Returns all options passed during the construction of the form.
array | The passed options |
Returns whether a specific option exists.
string | $name | The option name, |
bool | Whether the option exists |
Returns the value of a specific option.
string | $name | The option name |
mixed | $default | The value returned if the option does not exist |
mixed | The option value |
Sets the value for an attribute.
string | $name | The name of the attribute |
mixed | $value | The value of the attribute |
$this | The configuration object |
Sets the attributes.
array | $attributes |
$this | The configuration object |
Sets the data mapper used by the form.
DataMapperInterface | $dataMapper |
$this | The configuration object |
Set whether the form is disabled.
bool | $disabled | Whether the form is disabled |
$this | The configuration object |
Sets the data used for the client data when no value is submitted.
mixed | $emptyData | The empty data |
$this | The configuration object |
Sets whether errors bubble up to the parent.
bool | $errorBubbling |
$this | The configuration object |
Sets whether this field is required to be filled out when submitted.
bool | $required |
$this | The configuration object |
Sets the property path that the form should be mapped to.
string|PropertyPathInterface|null | $propertyPath | The property path or null if the path should be set automatically based on the form's name |
$this | The configuration object |
Sets whether the form should be mapped to an element of its parent's data.
bool | $mapped | Whether the form should be mapped |
$this | The configuration object |
Sets whether the form's data should be modified by reference.
bool | $byReference | Whether the data should be modified by reference |
$this | The configuration object |
Sets whether the form should read and write the data of its parent.
bool | $inheritData | Whether the form should inherit its parent's data |
$this | The configuration object |
Sets whether the form should be compound.
bool | $compound | Whether the form should be compound |
$this | The configuration object |
Set the types.
ResolvedFormTypeInterface | $type |
$this | The configuration object |
Sets the initial data of the form.
mixed | $data | The data of the form in application format |
$this | The configuration object |
Locks the form's data to the data passed in the configuration.
A form with locked data is restricted to the data passed in this configuration. The data can only be modified then by submitting the form.
bool | $locked | Whether to lock the default data |
$this | The configuration object |
Sets the form factory used for creating new forms.
FormFactoryInterface | $formFactory |
Sets the target URL of the form.
string | $action | The target URL of the form |
$this | The configuration object |
Sets the HTTP method used by the form.
string | $method | The HTTP method of the form |
$this | The configuration object |
Sets the request handler used by the form.
RequestHandlerInterface | $requestHandler |
$this | The configuration object |
Sets whether the form should be initialized automatically.
Should be set to true only for root forms.
bool | $initialize | true to initialize the form automatically, false to suppress automatic initialization. In the second case, you need to call {@link FormInterface::initialize()} manually |
$this | The configuration object |
Builds and returns the form configuration.
FormConfigInterface |
Validates whether the given variable is a valid form name.
string|int | $name | The tested form name |
UnexpectedTypeException | if the name is not a string or an integer |
InvalidArgumentException | if the name contains invalid characters |
Returns whether the given variable contains a valid form name.
A name is accepted if it
string | $name | The tested form name |
bool | Whether the name is valid |
Adds a new field to this group. A field must have a unique name within the group. Otherwise the existing field is overwritten.
If you add a nested group, this group should also be represented in the object hierarchy.
string|int|FormBuilderInterface | $child | |
string|null | $type | |
array | $options |
FormBuilderInterface |
Creates a form builder.
string | $name | The name of the form or the name of the property |
string|null | $type | The type of the form or null if name is a property |
array | $options | The options |
FormBuilderInterface |
Returns a child by name.
string | $name | The name of the child |
FormBuilderInterface |
InvalidArgumentException | if the given child does not exist |
Removes the field with the given name.
string | $name |
FormBuilderInterface |
Returns whether a field with the given name exists.
string | $name |
bool |
Returns the children.
array |
{@inheritdoc}
Creates the form.
FormInterface | The form |
{@inheritdoc}
FormBuilderInterface[] |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Form/FormBuilder.html