function ereg_replace () ist veraltet – Wie kann ich diesen Fehler beheben?

Ich habe folgenden PHP-Code geschrieben:

$input="menu=1&type=0&"; print $input."
".ereg_replace('/&/', ':::', $input);

Nach dem Ausführen des obigen Codes gibt es folgende Warnung:

Veraltet: function ereg_replace () ist veraltet

Wie kann ich diese Warnung beheben?

Wechseln Sie zu preg_replace Docs und aktualisieren Sie den Ausdruck, um die Preg-Syntax (PCRE) anstelle der ereg-Syntax (POSIX) zu verwenden, wo es Differenzen Docs gibt (genau wie es im Handbuch für ereg_replace Docs heißt ).

 print $input."
".ereg_replace('/&/', ':::', $input);

wird

 print $input."
".preg_replace('/&/', ':::', $input);

Mehr Beispiel:

 $mytext = ereg_replace('[^A-Za-z0-9_]', '', $mytext ); 

wird geändert in

 $mytext = preg_replace('/[^A-Za-z0-9_]/', '', $mytext ); 

Ändern Sie den Aufruf von ereg_replace, um stattdessen preg_replace zu verwenden

http://php.net/ereg_replace sagt:

Hinweis: Ab PHP 5.3.0 ist die Regex-Erweiterung zugunsten der PCRE-Erweiterung veraltet.

Somit ist preg_replace in jeder Hinsicht die bessere Wahl. Beachten Sie jedoch, dass es einige Unterschiede in der Mustersyntax gibt.

IIRC schlagen vor, stattdessen die preg_ functionen zu verwenden (in diesem Fall preg_replace ).

Hier finden Sie weitere Informationen zum Ersetzen von ereg_replace durch preg_replace