Mit Zend_Validate auf Leerzeichen im String prüfen
So können Sie in einem Formular ein Feld auf enthaltenen Leerzeichen prüfen und einen Fehler ausgeben, wenn Leerzeichen enthalten sind.
Für ein Kundenprojekt gab es die Anforderungen, dass Daten eines mit Zend umgesetzten Formulars auf Leerzeichen überprüft werden sollten. Nahezu alle anderen Zeichen waren erlaubt, nur eben keine Spaces. Aus diesem Grund schied Zend_Validate_Alnum direkt aus.
Um die Anforderung trotzdem umzusetzen, bediente ich mich Zend_Validate_Regex. Mit dem entsprechenden Pattern kann man problemlos auf Spaces prüfen und dann entsprechend das Feld als invalid markieren:
$username->addValidator( new Zend_Validate_Regex(array( 'pattern' => '/^[^\s]*$/') ) );
Wendet man das so an, erhält man folgendes Ergebnis:
Tobias Redmann: invalid
TobiasRedmann: valid
Die Anforderung trifft man häufig bei Nutzernamen an, die grundsätzlich aus beliebigen Zeichenkombinationen, jedoch ohne Leerzeichen, eingegeben werden müssen.
Mitdiskutieren