try {
$location = v::arr()
->key('timezone', v::string()->length(99, 100), false)
->setName('timezone')
->key('state', v::string(), false)
->setName('state')
->key('city', v::string(), false)
->setName('city');
$location->assert($testData);
} catch (\Exception $e) {
var_dump($e->findMessages('timezone', 'state', 'city'));
}
$testData = array('timezone' => 'fail', 'city' => 'ok');
$testData = array('timezone' => 'fail');
array(3) {
["timezone"]=>
string(38) "Key timezone must be valid on timezone"
["state"]=>
string(0) ""
["city"]=>
string(41) "These {{failed}} rules must pass for city"
}
$testData = array('city' => 'ok');