class Form extends Container implements HtmlStringable

Creates, validates and renders HTML forms.

Constants

Equal

validator

IsIn

validator

NotEqual

validator

IsNotIn

validator

Filled

validator

Blank

validator

Required

validator

Valid

validator

Submitted

validator

MinLength

validator

MaxLength

validator

Length

validator

Email

validator

URL

validator

Pattern

validator

PatternInsensitive

validator

Integer

validator

Numeric

validator

Float

validator

Min

validator

Max

validator

Range

validator

Count

validator

MaxFileSize

validator

MimeType

validator

Image

validator

MaxPostSize

validator

Get

method

Post

method

DataText

submitted data types

DataLine

submitted data types

DataFile

submitted data types

DataKeys

submitted data types

internal TrackerId

internal ProtectorId

deprecated EQUAL

deprecated IS_IN

deprecated NOT_EQUAL

deprecated IS_NOT_IN

deprecated FILLED

deprecated BLANK

deprecated REQUIRED

deprecated VALID

deprecated SUBMITTED

deprecated MIN_LENGTH

deprecated MAX_LENGTH

deprecated LENGTH

deprecated EMAIL

deprecated PATTERN

deprecated PATTERN_ICASE

deprecated INTEGER

deprecated NUMERIC

deprecated FLOAT

deprecated MIN

deprecated MAX

deprecated RANGE

deprecated COUNT

deprecated MAX_FILE_SIZE

deprecated MIME_TYPE

deprecated IMAGE

deprecated MAX_POST_SIZE

deprecated GET

deprecated POST

deprecated DATA_TEXT

deprecated DATA_LINE

deprecated DATA_FILE

deprecated DATA_KEYS

deprecated TRACKER_ID

deprecated PROTECTOR_ID

Properties

$onSuccess

Occurs when the form is submitted and successfully validated

$onError
$onSubmit
$onRender
internal $httpRequest
protected $crossOrigin
string $action
string $method
array read-only $errors
array read-only $ownErrors
Html read-only $elementPrototype
FormRenderer read-only $renderer

Methods

__construct(string|null $name = null)

No description

Form|null
getForm(bool $throw = true)

Returns self.

setAction(string|Stringable $url)

Sets form's action.

mixed
getAction()

Returns form's action.

setMethod(string $method)

Sets form's method GET or POST.

string
getMethod()

Returns form's method.

bool
isMethod(string $method)

Checks if the request method is the given one.

setHtmlAttribute(string $name, mixed $value = true)

Changes forms's HTML attribute.

void
allowCrossOrigin()

Disables CSRF protection using a SameSite cookie.

addProtection(string|null $errorMessage = null)

Cross-Site Request Forgery (CSRF) form protection.

addGroup(string|Stringable|null $caption = null, bool $setAsCurrent = true)

Adds fieldset group to the form.

void
removeGroup(ControlGroup $name)

Removes fieldset group from form.

array
getGroups()

Returns all defined groups.

ControlGroup|null
getGroup(string|int $name)

Returns the specified group.

setTranslator(Translator|null $translator)

Sets translate adapter.

Translator|null
getTranslator()

Returns translate adapter.

bool
isAnchored()

Tells if the form is anchored.

SubmitterControl|bool
isSubmitted()

Tells if the form was submitted.

bool
isSuccess()

Tells if the form was submitted and successfully validated.

setSubmittedBy(SubmitterControl|null $by)

Sets the submittor control.

mixed
getHttpData(int|null $type = null, string|null $htmlName = null)

Returns submitted HTTP data.

void
fireEvents()

Fires submit/click events.

reset()

Resets form.

array|null
receiveHttpData()

Internal: returns submitted HTTP data or null when form was not submitted.

void
validate(array|null $controls = null)

Performs the server side validation.

void
validateMaxPostSize()

No description

void
addError(string|Stringable $message, bool $translate = true)

Adds global error message.

array
getErrors()

Returns global validation errors.

bool
hasErrors()

No description

void
cleanErrors()

No description

array
getOwnErrors()

Returns form's validation errors.

Html
getElementPrototype()

Returns form's HTML element template.

setRenderer(FormRenderer|null $renderer)

Sets form renderer.

getRenderer()

Returns form renderer.

beforeRender()

No description

void
fireRenderEvents()

Must be called before form is rendered and render() is not used.

void
render(...$args)

Renders form.

string
__toString()

Renders form to string.

array
getToggles()

No description

static void
initialize(bool $reinit = false)

Initialize standalone forms.

Details

at line 219
__construct(string|null $name = null)

No description

Parameters

string|null $name

at line 238
Form|null getForm(bool $throw = true)

Returns self.

Parameters

bool $throw

Return Value

Form|null

at line 247
Form setAction(string|Stringable $url)

Sets form's action.

Parameters

string|Stringable $url

Return Value

Form

at line 257
mixed getAction()

Returns form's action.

Return Value

mixed

at line 266
Form setMethod(string $method)

Sets form's method GET or POST.

Parameters

string $method

Return Value

Form

at line 280
string getMethod()

Returns form's method.

Return Value

string

at line 289
bool isMethod(string $method)

Checks if the request method is the given one.

Parameters

string $method

Return Value

bool

at line 298
Form setHtmlAttribute(string $name, mixed $value = true)

Changes forms's HTML attribute.

Parameters

string $name
mixed $value

Return Value

Form

at line 308
void allowCrossOrigin()

Disables CSRF protection using a SameSite cookie.

Return Value

void

at line 317
CsrfProtection addProtection(string|null $errorMessage = null)

Cross-Site Request Forgery (CSRF) form protection.

Parameters

string|null $errorMessage

Return Value

CsrfProtection

at line 330
ControlGroup addGroup(string|Stringable|null $caption = null, bool $setAsCurrent = true)

Adds fieldset group to the form.

Parameters

string|Stringable|null $caption
bool $setAsCurrent

Return Value

ControlGroup

at line 349
void removeGroup(ControlGroup $name)

Removes fieldset group from form.

Parameters

ControlGroup $name

Return Value

void

at line 374
array getGroups()

Returns all defined groups.

Return Value

array

at line 383
ControlGroup|null getGroup(string|int $name)

Returns the specified group.

Parameters

string|int $name

Return Value

ControlGroup|null

at line 395
Form setTranslator(Translator|null $translator)

Sets translate adapter.

Parameters

Translator|null $translator

Return Value

Form

at line 405
Translator|null getTranslator()

Returns translate adapter.

Return Value

Translator|null

at line 417
bool isAnchored()

Tells if the form is anchored.

Return Value

bool

at line 426
SubmitterControl|bool isSubmitted()

Tells if the form was submitted.

Return Value

SubmitterControl|bool

at line 439
bool isSuccess()

Tells if the form was submitted and successfully validated.

Return Value

bool

at line 449
Form setSubmittedBy(SubmitterControl|null $by)

internal  
 

Sets the submittor control.

Parameters

SubmitterControl|null $by

Return Value

Form

at line 459
mixed getHttpData(int|null $type = null, string|null $htmlName = null)

Returns submitted HTTP data.

Parameters

int|null $type
string|null $htmlName

Return Value

mixed

at line 482
void fireEvents()

Fires submit/click events.

Return Value

void

at line 546
Form reset()

Resets form.

Return Value

Form

at line 557
protected array|null receiveHttpData()

Internal: returns submitted HTTP data or null when form was not submitted.

Return Value

array|null

at line 590
void validate(array|null $controls = null)

Performs the server side validation.

Parameters

array|null $controls

Return Value

void

at line 603
void validateMaxPostSize()

internal  
 

No description

Return Value

void

at line 619
void addError(string|Stringable $message, bool $translate = true)

Adds global error message.

Parameters

string|Stringable $message
bool $translate

Return Value

void

at line 632
array getErrors()

Returns global validation errors.

Return Value

array

at line 638
bool hasErrors()

No description

Return Value

bool

at line 644
void cleanErrors()

No description

Return Value

void

at line 653
array getOwnErrors()

Returns form's validation errors.

Return Value

array

at line 665
Html getElementPrototype()

Returns form's HTML element template.

Return Value

Html

at line 680
Form setRenderer(FormRenderer|null $renderer)

Sets form renderer.

Parameters

FormRenderer|null $renderer

Return Value

Form

at line 690
FormRenderer getRenderer()

Returns form renderer.

Return Value

FormRenderer

at line 700
protected beforeRender()

No description

at line 708
void fireRenderEvents()

Must be called before form is rendered and render() is not used.

Return Value

void

at line 721
void render(...$args)

Renders form.

Parameters

...$args

Return Value

void

at line 731
string __toString()

Renders form to string.

Return Value

string

at line 738
array getToggles()

No description

Return Value

array

at line 757
static void initialize(bool $reinit = false)

Initialize standalone forms.

Parameters

bool $reinit

Return Value

void