class Container extends Container implements ArrayAccess

Container for form controls.

Constants

private ARRAY

Properties

$onValidate

Occurs when the form was validated

protected ControlGroup|null $currentGroup
ArrayHash $values
Iterator read-only $controls
Form|null read-only $form

Methods

setDefaults(array|object $data, bool $erase = false)

Fill-in with default values.

setValues(array|object $data, bool $erase = false)

Fill-in with values.

object|array
getValues(string|object|null $returnType = null, array $controls = null)

Returns the values submitted by the form.

object|array
getUnsafeValues(string|object|null $returnType, array $controls = null)

Returns the potentially unvalidated values submitted by the form.

setMappedType(string $type)

No description

bool
isValid()

Is form valid?

void
validate(array $controls = null)

Performs the server side validation.

array
getErrors()

Returns all validation errors.

setCurrentGroup(ControlGroup $group = null)

No description

ControlGroup|null
getCurrentGroup()

Returns current group.

addComponent(IComponent $component, string|null $name, string $insertBefore = null)

Adds the specified component to the IContainer.

getControls()

Iterates over all form controls.

Form|null
getForm(bool $throw = true)

Returns form.

addText(string $name, string|object $label = null, int $cols = null, int $maxLength = null)

Adds single-line text input control to the form.

addPassword(string $name, string|object $label = null, int $cols = null, int $maxLength = null)

Adds single-line text input control used for sensitive input such as passwords.

addTextArea(string $name, string|object $label = null, int $cols = null, int $rows = null)

Adds multi-line text input control to the form.

addEmail(string $name, string|object $label = null)

Adds input for email.

addInteger(string $name, string|object $label = null)

Adds input for integer.

addUpload(string $name, string|object $label = null)

Adds control that allows the user to upload files.

addMultiUpload(string $name, string|object $label = null)

Adds control that allows the user to upload multiple files.

addHidden(string $name, $default = null)

Adds hidden form control used to store a non-displayed value.

addCheckbox(string $name, string|object $caption = null)

Adds check box control to the form.

addRadioList(string $name, string|object $label = null, array $items = null)

Adds set of radio button controls to the form.

addCheckboxList(string $name, string|object $label = null, array $items = null)

Adds set of checkbox controls to the form.

addSelect(string $name, string|object $label = null, array $items = null, int $size = null)

Adds select box control that allows single item selection.

addMultiSelect(string $name, string|object $label = null, array $items = null, int $size = null)

Adds select box control that allows multiple item selection.

addSubmit(string $name, string|object $caption = null)

Adds button used to submit form.

addButton(string $name, string|object $caption = null)

Adds push buttons with no default behavior.

addImageButton(string $name, string $src = null, string $alt = null)

Adds graphical button used to submit form.

addImage() deprecated

No description

addContainer(string|int $name)

Adds naming container to the form.

__call(string $name, array $args)

No description

static void
extensionMethod(string $name, $callback)

No description

__clone()

Prevents cloning.

Details

at line 56
Container setDefaults(array|object $data, bool $erase = false)

Fill-in with default values.

Parameters

array|object $data
bool $erase

Return Value

Container

at line 72
Container setValues(array|object $data, bool $erase = false)

internal  
 

Fill-in with values.

Parameters

array|object $data
bool $erase

Return Value

Container

at line 112
object|array getValues(string|object|null $returnType = null, array $controls = null)

Returns the values submitted by the form.

Parameters

string|object|null $returnType

'array' for array

array $controls

Return Value

object|array

at line 137
object|array getUnsafeValues(string|object|null $returnType, array $controls = null)

Returns the potentially unvalidated values submitted by the form.

Parameters

string|object|null $returnType

'array' for array

array $controls

Return Value

object|array

at line 183
Container setMappedType(string $type)

No description

Parameters

string $type

Return Value

Container

at line 196
bool isValid()

Is form valid?

Return Value

bool

at line 215
void validate(array $controls = null)

Performs the server side validation.

Parameters

array $controls

Return Value

void

at line 239
array getErrors()

Returns all validation errors.

Return Value

array

at line 253
Container setCurrentGroup(ControlGroup $group = null)

No description

Parameters

ControlGroup $group

Return Value

Container

at line 263
ControlGroup|null getCurrentGroup()

Returns current group.

Return Value

ControlGroup|null

at line 274
IContainer addComponent(IComponent $component, string|null $name, string $insertBefore = null)

Adds the specified component to the IContainer.

Parameters

IComponent $component
string|null $name
string $insertBefore

Return Value

IContainer

Exceptions

InvalidStateException

at line 287
Iterator getControls()

Iterates over all form controls.

Return Value

Iterator

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

Returns form.

Parameters

bool $throw

Return Value

Form|null

at line 309
TextInput addText(string $name, string|object $label = null, int $cols = null, int $maxLength = null)

Adds single-line text input control to the form.

Parameters

string $name
string|object $label
int $cols
int $maxLength

Return Value

TextInput

at line 320
TextInput addPassword(string $name, string|object $label = null, int $cols = null, int $maxLength = null)

Adds single-line text input control used for sensitive input such as passwords.

Parameters

string $name
string|object $label
int $cols
int $maxLength

Return Value

TextInput

at line 336
TextArea addTextArea(string $name, string|object $label = null, int $cols = null, int $rows = null)

Adds multi-line text input control to the form.

Parameters

string $name
string|object $label
int $cols
int $rows

Return Value

TextArea

at line 347
TextInput addEmail(string $name, string|object $label = null)

Adds input for email.

Parameters

string $name
string|object $label

Return Value

TextInput

at line 358
TextInput addInteger(string $name, string|object $label = null)

Adds input for integer.

Parameters

string $name
string|object $label

Return Value

TextInput

at line 370
UploadControl addUpload(string $name, string|object $label = null)

Adds control that allows the user to upload files.

Parameters

string $name
string|object $label

Return Value

UploadControl

at line 380
UploadControl addMultiUpload(string $name, string|object $label = null)

Adds control that allows the user to upload multiple files.

Parameters

string $name
string|object $label

Return Value

UploadControl

at line 389
HiddenField addHidden(string $name, $default = null)

Adds hidden form control used to store a non-displayed value.

Parameters

string $name
$default

Return Value

HiddenField

at line 400
Checkbox addCheckbox(string $name, string|object $caption = null)

Adds check box control to the form.

Parameters

string $name
string|object $caption

Return Value

Checkbox

at line 410
RadioList addRadioList(string $name, string|object $label = null, array $items = null)

Adds set of radio button controls to the form.

Parameters

string $name
string|object $label
array $items

Return Value

RadioList

at line 420
CheckboxList addCheckboxList(string $name, string|object $label = null, array $items = null)

Adds set of checkbox controls to the form.

Parameters

string $name
string|object $label
array $items

Return Value

CheckboxList

at line 430
SelectBox addSelect(string $name, string|object $label = null, array $items = null, int $size = null)

Adds select box control that allows single item selection.

Parameters

string $name
string|object $label
array $items
int $size

Return Value

SelectBox

at line 441
MultiSelectBox addMultiSelect(string $name, string|object $label = null, array $items = null, int $size = null)

Adds select box control that allows multiple item selection.

Parameters

string $name
string|object $label
array $items
int $size

Return Value

MultiSelectBox

at line 456
SubmitButton addSubmit(string $name, string|object $caption = null)

Adds button used to submit form.

Parameters

string $name
string|object $caption

Return Value

SubmitButton

at line 466
Button addButton(string $name, string|object $caption = null)

Adds push buttons with no default behavior.

Parameters

string $name
string|object $caption

Return Value

Button

at line 477
ImageButton addImageButton(string $name, string $src = null, string $alt = null)

Adds graphical button used to submit form.

Parameters

string $name
string $src

URI of the image

string $alt

alternate text for the image

Return Value

ImageButton

at line 484
ImageButton addImage() deprecated

deprecated use addImageButton()

No description

Return Value

ImageButton

at line 494
Container addContainer(string|int $name)

Adds naming container to the form.

Parameters

string|int $name

Return Value

Container

at line 508
__call(string $name, array $args)

No description

Parameters

string $name
array $args

Exceptions

MemberAccessException

at line 517
static void extensionMethod(string $name, $callback)

No description

Parameters

string $name
$callback

Return Value

void

at line 529
__clone()

Prevents cloning.

Traits

Implementation of \ArrayAccess for IContainer.