ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ILIAS\Validation\Constraints\IsArrayOf Class Reference
+ Inheritance diagram for ILIAS\Validation\Constraints\IsArrayOf:
+ Collaboration diagram for ILIAS\Validation\Constraints\IsArrayOf:

Public Member Functions

 __construct (Data\Factory $data_factory, Constraint $on_element, \ilLanguage $lng)
 IsArrayOf constructor. More...
 
- Public Member Functions inherited from ILIAS\Validation\Constraints\Custom
 __construct (callable $is_ok, $error, Data\Factory $data_factory, \ilLanguage $lng)
 If $error is a callable it needs to take two parameters: More...
 
 check ($value)
 Checks the provided value.Should not throw if accepts($value).
Exceptions

UnexpectedValueException if value does not comply with encoded constraint.

Parameters
mixed$value
Returns
null
More...
 
 accepts ($value)
 Tells if the provided value complies.
Parameters
mixed$value
Returns
bool
More...
 
 problemWith ($value)
 Tells what the problem with the provided value is.Should return null if accepts($value).
Parameters
mixed$value
Returns
string|null
More...
 
 restrict (Result $result)
 Restricts a Result.Must do nothing with the result if $result->isError(). Must replace the result with an error according to problemWith() if !accepts($result->value()).
Parameters
Result$result
Returns
Result
More...
 
 withProblemBuilder (callable $builder)
 Get a constraint like this one with a builder for a custom error message.problemWith() must return an error message according to the new builder for the new constraint.The builder needs to be callable that takes two parameters:
Parameters
callable$builder
Returns
Constraint
More...
 
 getErrorMessage ($value)
 Get the problem message. More...
 
 check ($value)
 Checks the provided value. More...
 
 accepts ($value)
 Tells if the provided value complies. More...
 
 problemWith ($value)
 Tells what the problem with the provided value is. More...
 
 restrict (Result $result)
 Restricts a Result. More...
 
 withProblemBuilder (callable $builder)
 Get a constraint like this one with a builder for a custom error message. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ILIAS\Validation\Constraints\Custom
 getLngClosure ()
 Get the closure to be passed to the error-function that does i18n and sprintf. More...
 
- Protected Attributes inherited from ILIAS\Validation\Constraints\Custom
 $data_factory
 
 $lng
 
 $is_ok
 
 $error
 

Detailed Description

Definition at line 16 of file IsArrayOf.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Validation\Constraints\IsArrayOf::__construct ( Data\Factory  $data_factory,
Constraint  $on_element,
\ilLanguage  $lng 
)

IsArrayOf constructor.

Parameters
Data\Factory$data_factory
Constraint$on_element

Definition at line 25 of file IsArrayOf.php.

26 {
27 parent::__construct(
28 function ($value) use ($on_element) {
29 if (!is_array($value)) {
30 return false;
31 }
32 foreach ($value as $item) {
33 if (!$on_element->accepts($item)) {
34 return false;
35 }
36 }
37
38 return true;
39 },
40 function ($txt, $value) use ($on_element) {
41 if (!is_array($value)) {
42 return $txt("not_an_array", gettype($value));
43 }
44 $sub_problems = [];
45 foreach ($value as $item) {
46 $sub_problem = $on_element->problemWith($item);
47 if ($sub_problem !== null) {
48 $sub_problems[] = $sub_problem;
49 }
50 }
51 return $txt("not_an_array_of", implode(" ", $sub_problems));
52 },
54 $lng
55 );
56 }
$txt
Definition: error.php:11

References ILIAS\Validation\Constraints\Custom\$data_factory, ILIAS\Validation\Constraints\Custom\$lng, $txt, ILIAS\Validation\Constraint\accepts(), and ILIAS\Validation\Constraint\problemWith().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: