Neue Features:
– Unterstützung von Fehlermeldungen
– Mehrsprachigkeit (deutsch / englisch) über Annotations
– Manuelles Festlegen einer Validierungsklasse
Definition der Fehlermeldungen über Annotations:
In der Validierungsklasse „ValidatorRules“ können die Fehlermeldungen in beliebig vielen Sprachen mit Hilfe von Annotations hinterlegt werden.
/**
* @ErrorMessage[lang=de] Bitte geben Sie eine Zahl an, die kleiner ist als %.2f.
* @ErrorMessage[lang=en] Please enter a number less than %.2f.
*/
public function check_less_than($mValue, $aParams)
{
return (number_format($mValue, 15) < $aParams[0]);
}
* @ErrorMessage[lang=de] Bitte geben Sie eine Zahl an, die kleiner ist als %.2f.
* @ErrorMessage[lang=en] Please enter a number less than %.2f.
*/
public function check_less_than($mValue, $aParams)
{
return (number_format($mValue, 15) < $aParams[0]);
}
Sprache festlegen:
Die Sprache in der die Fehlermeldungen zurückgegeben werden sollen, lässt sich im Validator ganz einfach über die Funktion „setLanguage“ festlegen.
$oValidator = new Validator();
$oValidator->setLanguage('de'); //Deutsch
$oValidator->setLanguage('de'); //Deutsch
Validieren und Fehlermeldung auslesen:
Die jeweilige Fehlermeldung kann direkt nach der Validierung über die Funktion „getLastErrorMessage“ ermittelt werden.
$oValidator->setLanguage('de');
$oValidator->isValid("15", 'less_than[10.90]'); //false
echo $oValidator->getLastErrorMessage();
//Bitte geben Sie eine Zahl an, die kleiner ist als 10.90.
//Nochmal auf Englisch
$oValidator->setLanguage('en');
$oValidator->isValid("15", 'less_than[10.90]'); //false
echo $oValidator->getLastErrorMessage();
//Please enter a number less than 10.90.
$oValidator->isValid("15", 'less_than[10.90]'); //false
echo $oValidator->getLastErrorMessage();
//Bitte geben Sie eine Zahl an, die kleiner ist als 10.90.
//Nochmal auf Englisch
$oValidator->setLanguage('en');
$oValidator->isValid("15", 'less_than[10.90]'); //false
echo $oValidator->getLastErrorMessage();
//Please enter a number less than 10.90.