Gajus\Vlad\Translator::translateMessage PHP Method

translateMessage() public method

public translateMessage ( Validator $validator, Selector $selector )
$validator Validator
$selector Selector
    public function translateMessage(\Gajus\Vlad\Validator $validator, \Gajus\Vlad\Selector $selector)
    {
        $message = $this->getValidatorMessage(get_class($validator));
        $message = preg_replace_callback('/\\{([a-z_\\.]+)}/i', function ($e) use($validator, $selector) {
            $path = explode('.', $e[1]);
            if ($path[0] === 'input' && $path[1] === 'name') {
                return $this->getInputName($selector);
            } else {
                if ($path[0] === 'validator' && $path[1] === 'options') {
                    $options = $validator->getOptions();
                    if (isset($path[2]) && isset($options[$path[2]]) && is_scalar($options[$path[2]])) {
                        return $options[$path[2]];
                    }
                }
            }
            throw new \Gajus\Vlad\Exception\InvalidArgumentException('Unknown variable ("' . $e[1] . '") in error message.');
        }, $message);
        return $message;
    }