Zend_Filter PregReplace in ini-Config

Heute hatte ich das Problem, dass die Config für ein Zend_Form-Formular in einer ini-Datei stehen musste. Dabei sollte auch PregReplace zum Einsatz kommen, um nichtgewollte Worte gegen Sternchen auszutauschen. Es gibt aber scheinbar kein Tutorial oder Beispiel für die Einbindung von Filtern per ini-Datei, bei denen man dem Filter Optionen hinzufügen kann. Man findet immer nur einfache Filter-Einbindungen ohne Optionen wie

[code lang=“bash“ inline=“yes“]elements.nachricht.options.filters.bigger.filter = „StringToUpper“[/code]

zum Vergrößern aller Buchstaben.

Durch einiges Probieren mit den Kollegen und Durchforsten der Zend_Filter-Library, kamen wir dann auf folgendes:

[code lang=“bash“ inline=“yes“]elements.nachricht.options.filters.badword.filter = „PregReplace“
elements.nachricht.options.filters.badword.options.match = „/(\bpoo\b|\bfuck\b|\bsuck\b)/i“
elements.nachricht.options.filters.badword.options.replace = „*****“[/code]

Man muss also nach dem selbstgewählten Namen des Filters, in meinem Fall „badword“, den verwendeten Filter mit „.filter“ einbinden. Die Optionen werden mit „.options“ ebenfalls direkt nach „badword“ eingebracht. In der Option „match“ steht dabei ein regulärer Ausdruck mit dem zu filternden Format und in „replace“ die dafür vorgesehene Zeichenkette als Ersatz für die gefundenen Worte. „\b“ markiert Wortanfänge und -enden. „i“ steht dabei als caseinsensitive, also werden Groß- und Kleinschreibung ignoriert. Die Trennung der bösen Worte erfolgt per „|“.


Beitrag veröffentlicht

in

von

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Datenschutz-Übersicht
Wandpapier

Diese Website verwendet Cookies, damit wir dir die bestmögliche Benutzererfahrung bieten können. Cookie-Informationen werden in deinem Browser gespeichert und führen Funktionen aus, wie das Wiedererkennen von dir, wenn du auf unsere Website zurückkehrst, und hilft unserem Team zu verstehen, welche Abschnitte der Website für dich am interessantesten und nützlichsten sind.

Unbedingt notwendige Cookies

Unbedingt notwendige Cookies sollten jederzeit aktiviert sein, damit wir deine Einstellungen für die Cookie-Einstellungen speichern können.

Wenn du diesen Cookie deaktivierst, können wir die Einstellungen nicht speichern. Dies bedeutet, dass du jedes Mal, wenn du diese Website besuchst, die Cookies erneut aktivieren oder deaktivieren musst.