Pattern is a string while replacement in an array

Die Fehlermeldung Warning: preg_replace(): Parameter mismatch, pattern is a string while replacement in an array in [FILENAME] on line [LINE] »Parameter passen nicht zusammen, das Suchmuster ist ein String, wohingegen der Ersatz in einem Array ist« tritt nur bei der Verwendung der PHP-Funktion preg_replace() auf, und zwar dann, wenn man - wie die Fehlermeldung schon sagt - als Suchmuster einen String verwendet, als Ersatz aber ein Array angegeben hat. Da es keinerlei Sinn ergibt, für ein Suchmuster mehrere Ersatzstrings anzugeben - wie sollte wo was auf welche Weise ersetzt werden? - beschwert sich PHP mit dieser Fehlermeldung.

Beispiele

Der folgende Code <?PHP $text 'Dies war ein Text'; $pattern '#(.+)#'; $replace = array('ersatz 1''ersatz 2''ersatz 3'); $text preg_replace($pattern$replace$text); ?> erzeugt zum Beispiel diese Fehlermeldung.

Fehlerbeseitigung

Um diesen Fehler zu beseitigen, sollte man nochmal die Parameter kontrollieren, die man der Funktion preg_replace() übergeben hat. Weitere Informationen zu den möglichen Parametern finden sich im entsprechenden Kapitel dieses Tutorials.

Verwandte Themen
Kapitelnavigation