@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!!!

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

Hinweise zum Artikel