Valitron\Validator::addInstanceRule PHP Method

addInstanceRule() public method

Adds a new validation rule callback that is tied to the current instance only.
public addInstanceRule ( string $name, mixed $callback, string $message = null )
$name string
$callback mixed
$message string
    public function addInstanceRule($name, $callback, $message = null)
    {
        static::assertRuleCallback($callback);
        $this->_instanceRules[$name] = $callback;
        $this->_instanceRuleMessage[$name] = $message;
    }

Usage Example

 public function testUniqueRuleName()
 {
     $v = new Validator(array());
     $args = array("foo", "bar");
     $this->assertEquals("foo_bar_rule", $v->getUniqueRuleName($args));
     $this->assertEquals("foo_rule", $v->getUniqueRuleName("foo"));
     $v->addInstanceRule("foo_rule", function () {
     });
     $u = $v->getUniqueRuleName("foo");
     $this->assertRegExp("/^foo_rule_[0-9]{1,5}\$/", $u);
 }