mirror of
https://github.com/Respect/Validation.git
synced 2024-06-14 03:25:09 +02:00
900 B
900 B
KeySet
v::keySet(Key $rule...)
Validates a keys in a defined structure.
$dict = ['foo' => 42];
v::keySet(
v::key('foo', v::intVal())
)->validate($dict); //true
Extra keys are not allowed:
$dict = ['foo' => 42, 'bar' => 'String'];
v::keySet(
v::key('foo', v::intVal())
)->validate($dict); //false
Missing required keys are not allowed:
$dict = ['foo' => 42, 'bar' => 'String'];
v::keySet(
v::key('foo', v::intVal()),
v::key('bar', v::stringType()),
v::key('baz', v::boolType())
)->validate($dict); //false
Missing non-required keys are allowed:
$dict = ['foo' => 42, 'bar' => 'String'];
v::keySet(
v::key('foo', v::intVal()),
v::key('bar', v::stringType()),
v::key('baz', v::boolType(), false)
)->validate($dict); //true
The keys' order is not considered in the validation.
See also: