@Bastianoso

Assoziative Arrays fit für PHP 7 machen

Regulärer Ausdruck um den Code für PHP7 anzupassen, wenn man diese Fehlermeldung erhält: „PHP Warning: Use of undefined constant x – assumed ‚x‘ (this will throw an Error in a future version of PHP)“

Wen man assoziative Arrays in PHP benutzt, auf deren values man nicht mit einem numerischen Keys á la $user[0] oder $user[1] zugreift, sondern Namen dafür benutzt (zum Beispiel: $user[id] oder $user[name]), so wirft einem diese Vorgehensweise mit PHP Version 7 nun eine warning message ins Logfile:

PHP Warning: Use of undefined constant name – assumed ’name‘ (this will throw an Error in a future version of PHP)

Die Lösung wird ja glücklicherweise gleich mitgeliefert, denn man braucht den Namen des Wertes lediglich mit zwei Apostrophen zu versehen.

Aus dieser Notation:

Wird also diese Notation:

Und damit man nicht händisch via Suchen & Ersetzen durch alle Codefiles gehen muss, kann man sich mit diesem regulären Ausdruck die Arbeit vereinfachen:

RegEx für assoziative Arrays in PHP7

Suchen nach:

Ersetzen mit:

Dieses Suchmuster sucht nach den öffnenden und schließenden eckigen Klammern von Arrays [ + ] und prüft, ob darin alphabetische Zeichen von a bis z oder A bis Z drin vorkommen (mindestens eines, aber beliebig viele).

Lässt man das einmal über alle seine Daten laufen, sind die assoziativen Arrays korrekt ausgezeichnet. Ältere PHP-Versionen haben über diese, eigentlich falsche, Notation noch gütig hinweggesehen, aber bald ist es damit vorbei und die warning messages sind ein erstes Anzeichen dafür.

Apostroph escapen

Man muss natürlich kein Apostroph nehmen, normale Anführungszeichen eignen sich dafür auch. Nutzt man als Array-Index beispielsweise einen Namen, der ein Apostroph enthält (Ku’damm) ist es einfacher, direkt auf Anführungszeichen auszuweichen.

Nutzt man Apostrophe, kann man die in den values enthaltenen Apostrophe auch escapen: Ku\‘damm.

Artikel-Bewertung (5 / 1)

1
Hinterlasse einen Kommentar

  Abonnieren  
neueste älteste meiste Bewertungen
Benachrichtige mich bei
Dennis
Artikel-Bewertung :
     

DANKE!!!

Musik Apple Film iPhone Tipps & Tricks Datenschutz Computer Abschlussprüfung Sport Sibirische Katze Kater Datenbanken Haushalt projekt52 IKEA Wirtschaft Fotos URL Fernsehen Sommer Windows Redirect BarCamp Laufen Buchhaltung Silvester Einkaufen Werbung Party Internet Sicherheit IST-Analyse C++ twitter E-Mail Videos Netzwerktechnik Deutschland Weihnachten Kino Programmieren Mathematik Microsoft Mac OS X Konzert Terminal Altona Facebook Fahrrad web 2.0 Weiterleitung Ausbildung Organisation Ernährung Inventur iOS Gesellschaft Projektmanagement Datenübertragung Netzwerk Kredite OS X Hamburg Webserver Bilanz

Hinweise zum Artikel

Heiß diskutiert