本文整理匯總了PHP中lithium\util\Validator::rules方法的典型用法代碼示例。如果您正苦於以下問題:PHP Validator::rules方法的具體用法?PHP Validator::rules怎麽用?PHP Validator::rules使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類lithium\util\Validator
的用法示例。
在下文中一共展示了Validator::rules方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testStateReset
/**
* Tests that the rules state is reset when calling `Validator::__init()`.
*/
public function testStateReset()
{
$this->assertNull(Validator::rules('foo'));
Validator::add('foo', '/foo/');
$this->assertEqual('/foo/', Validator::rules('foo'));
Validator::__init();
$this->assertNull(Validator::rules('foo'));
}
示例2: function
*
* The regular expression for a locale aware rule is retrieved using the `Catalog`
* class. To add support for more locales and rules have a look at the `li3_lldr`
* and `li3_cldr` projects.
*
* Further enables support for multibyte strings through the `Multibyte` class by
* overwriting rules (currently just `lengthBetween`).
*
* @link https://github.com/UnionOfRAD/li3_lldr
* @link https://github.com/UnionOfRAD/li3_cldr
* @see lithium\g11n\Catalog
* @see lithium\g11n\Multibyte
* @see lithium\util\Validator
*/
foreach (array('phone', 'postalCode', 'ssn') as $name) {
$regex = Validator::rules($name);
Validator::add($name, function ($value, $format, $options) use($name, $regex) {
if ($format !== 'any') {
$regex = Catalog::read(true, "validation.{$name}", $format);
}
if (!$regex) {
$message = "Cannot find regular expression for validation rule `{$name}` ";
$message .= "using format/locale `{$format}`.";
throw new RuntimeException($message);
}
return preg_match($regex, $value);
});
}
Validator::add('lengthBetween', function ($value, $format, $options) {
$length = Multibyte::strlen($value);
$options += array('min' => 1, 'max' => 255);