BenBE's humble thoughts Thoughts the world doesn't need yet …

09.07.2009

Der evil-Modifier

Filed under: Server — Schlagwörter: , , , , — BenBE @ 21:11:46

Eine der bemerkenswerten Bibliotheken, die PHP zur Nutzung anbietet – sofern sie mal nicht wie so oft überfordert ist – ist die PCRE-Bibliothek (Perl Compatible Regular Expressions), mit der sich auf einfache Weise (naja, wenn man die Syntax einmal verstanden hat) umfangreichste Dinge vollführen lassen. Eine häufige Anwendung, die man hierbei regelmäßig als Betrachter fremder Bibliotheken zu Gesicht bekommt, ist hierbei Quelltext, der elegant Parsing von Eingabedaten vornimmt, Sicherheitsprüfungen ausführt oder auf andere Art einen Eingabestring verarbeitet. Mit ein wenig Magic drumherum lässt sich so ein ziemlich schneller Syntax-Highlighter schreiben, der mit einem Schlag ganze Gruppen von Schlüsselworten highlighted und dabei abhängig von den gefundenen Schlüsselworten z.B. Links auf deren Dokumentation fertigt.

Doch wie so häufig bei PHP gibt es eine Reihe von Fallstricken. Einer dieser liegt bei eben dieser genannten Bibliothek. Diese bietet für umfangreiche, nicht statisch ausführbare Ersetzungen mit preg_replace einen speziellen Modus: Den /e-Modifier, der auf Grund seiner Arbeitsweise auch gern Evil-Modifier genannt werden darf. Aber dazu sollten wir erst einmal klären, was diese Funktion tut. (more…)

Flattr this!

Powered by WordPress