soll heißen...?
du nimmst sie zu gerne her und verursachst damit probleme, die du vorher nicht hattest ;)
nein, ernsthaft: reguläre ausdrücke sind eine feine sache, aber wenn ich dinge, die ich mit einem simplen suchen/ersetzen oder mit einem simplen suche in string nach exakter zeichenkette erledigen kann, verwende ich keine regulären ausdrücke
einerseits sind reguläre ausdrücke fehleranfällig (dh menschliche fehler, da man sich leicht mal bei einem suchmuster vertut, wenn man etwas erweitert) und auch in viele fällen langsamer als normale stringsuchfunktionen
die geschwindigkeitssache ist hier wohl nicht relevant, wohlaber die fehleranfälligkeit
ich meine, dass eine kommaseparierte wurst an verbotenen zeichenketten leichter zu warten ist, als ein regulärer ausdruck, der diese zeichenketten beinhaltet
$endungen = "foo,bar,baz";
$endungen_arr = explode(',', $verboteneendungen);
$pathinfo = pathinfo('/var/www/htdocs/foobar.foo');
if (in_array($pathinfo['extension'], $endungen_arr)) {
// tu es!
}
eine kommaseparierte liste ist imho sehr einfach zu ändern - wenn aber jetzt im regulären ausdruck der verbotene dateinameerweiterungen sondergeschichten dazukommen, wie zb "$$$" (diverse programme legen tempfiles mit dieser erweiterung an) oder andere exoten, wird das einfache abändern des regulären ausdrucks schon langsam aber sicher "kompliziert", vor allem dann, wenn die liste der verbotenen dateiendungen aus einem konfigurationsfile kommen soll