public function createRule($name, $options = null, $messageTemplate = null, $label = null)
{
$validator = $this->construcRuleByNameAndOptions($name, $options);
// no message template, try to get it from the registry
if (!$messageTemplate) {
$messageTemplate = $this->getSuggestedMessageTemplate($name, !!$label);
}
if (is_string($messageTemplate) && $messageTemplate !== '') {
$validator->setMessageTemplate($messageTemplate);
}
if (is_string($label) && $label !== '') {
$validator->setOption('label', $label);
}
return $validator;
}