Class

Symfony\Component\DomCrawler\Form

class Form extends Link implements ArrayAccess

Form represents an HTML form.

Methods

__construct(DOMNode $node, string $currentUri, string $method = null)

Constructor.

DOMNode getNode()

Gets the node associated with this link.

from Link
string getMethod()

Gets the form method.

string getUri()

Gets the URI of the form.

DOMNode getFormNode()

Gets the form node associated with this form.

Form setValues(array $values)

Sets the value of the fields.

array getValues()

Gets the field values.

array getFiles()

Gets the file field values.

array getPhpValues()

Gets the field values as PHP.

array getPhpFiles()

Gets the file field values as PHP.

Boolean has(string $name)

Returns true if the named field exists.

remove(string $name)

Removes a field from the form.

FormField get(string $name)

Gets a named field.

set(FormField $field)

Sets a named field.

array all()

Gets all fields.

Boolean offsetExists(string $name)

Returns true if the named field exists.

FormField offsetGet(string $name)

Gets the value of a field.

offsetSet(string $name, string|array $value)

Sets the value of a field.

offsetUnset(string $name)

Removes a field from the form.

Details

at line 45
public __construct(DOMNode $node, string $currentUri, string $method = null)

Constructor.

Parameters

DOMNode $node A \DOMNode instance
string $currentUri The URI of the page where the form is embedded
string $method The method to use for the link (if null, it defaults to the method defined by the form)

Exceptions

LogicException if the node is not a button inside a form tag

in Link at line 63
public DOMNode getNode()

Gets the node associated with this link.

Return Value

DOMNode A \DOMNode instance

at line 205
public string getMethod()

Gets the form method.

If no method is defined in the form, GET is returned.

Return Value

string The method

at line 179
public string getUri()

Gets the URI of the form.

The returned URI is not the same as the form "action" attribute. This method merges the value if the method is GET to mimics browser behavior.

Return Value

string The URI

at line 57
public DOMNode getFormNode()

Gets the form node associated with this form.

Return Value

DOMNode A \DOMNode instance

at line 71
public Form setValues(array $values)

Sets the value of the fields.

Parameters

array $values An array of field values

Return Value

Form

at line 89
public array getValues()

Gets the field values.

The returned array does not include file fields (see getFiles).

Return Value

array An array of field values.

at line 112
public array getFiles()

Gets the file field values.

Return Value

array An array of file field values.

at line 142
public array getPhpValues()

Gets the field values as PHP.

This method converts fields with th array notation (like foo[bar] to arrays) like PHP does.

Return Value

array An array of field values.

at line 160
public array getPhpFiles()

Gets the file field values as PHP.

This method converts fields with th array notation (like foo[bar] to arrays) like PHP does.

Return Value

array An array of field values.

at line 223
public Boolean has(string $name)

Returns true if the named field exists.

Parameters

string $name The field name

Return Value

Boolean true if the field exists, false otherwise

at line 235
public remove(string $name)

Removes a field from the form.

Parameters

string $name The field name

at line 251
public FormField get(string $name)

Gets a named field.

Parameters

string $name The field name

Return Value

FormField The field instance

Exceptions

InvalidArgumentException When field is not present in this form

at line 267
public set(FormField $field)

Sets a named field.

Parameters

FormField $field The field

at line 279
public array all()

Gets all fields.

Return Value

array An array of fields

at line 330
public Boolean offsetExists(string $name)

Returns true if the named field exists.

Parameters

string $name The field name

Return Value

Boolean true if the field exists, false otherwise

at line 344
public FormField offsetGet(string $name)

Gets the value of a field.

Parameters

string $name The field name

Return Value

FormField The associated Field instance

Exceptions

InvalidArgumentException if the field does not exist

at line 361
public offsetSet(string $name, string|array $value)

Sets the value of a field.

Parameters

string $name The field name
string|array $value The value of the field

Exceptions

InvalidArgumentException if the field does not exist

at line 375
public offsetUnset(string $name)

Removes a field from the form.

Parameters

string $name The field name