Heim  >  Artikel  >  Backend-Entwicklung  >  Was soll ich tun, wenn die neue Ergänzung zu PHP7 nicht undefiniert meldet?

Was soll ich tun, wenn die neue Ergänzung zu PHP7 nicht undefiniert meldet?

DDD
DDDOriginal
2023-08-10 13:03:491043Durchsuche

php7 neues Problem meldet keine undefinierte Lösung: 1. Ändern Sie die Fehlerberichtsebene von PHP, indem Sie die Datei php.ini ändern. 2. Verwenden Sie die Funktion „error_reporting“ im Code, um die Fehlerberichtsebene dynamisch festzulegen leer Warten Sie, bis die Funktion überprüft, ob die Variable ermittelt wurde. 4. Verwenden Sie den strikten Modus von PHP, um die Deklaration von Variablen vor der Verwendung zu erzwingen, sodass potenzielle Probleme früher erkannt und behoben werden können.

Was soll ich tun, wenn die neue Ergänzung zu PHP7 nicht undefiniert meldet?

Die Betriebsumgebung dieses Artikels: Windows 10-System, PHP7.4-Version, Dell G3-Computer.

Wenn wir in PHP 7 auf eine undefinierte Variable zugreifen oder eine undefinierte Funktion aufrufen, wird kein Fehler gemeldet. Stattdessen wird ein Fehler auf E_NOTICE-Ebene ausgegeben und ein NULL-Wert zurückgegeben. Diese Verhaltensänderung soll die Robustheit und Lesbarkeit des Codes verbessern.

Einige Entwickler hoffen jedoch möglicherweise, dass in PHP 7 weiterhin Fehler bei undefinierten Variablen auftreten, damit potenzielle Probleme rechtzeitig erkannt und behoben werden können. Glücklicherweise bietet PHP 7 einige Optionen, um dieses Verhalten zu kontrollieren.

1. Ändern Sie die Fehlerberichtsebene von PHP, indem Sie die Datei php.ini ändern.

In der Datei php.ini finden Sie ein Konfigurationselement namens error_reporting, das bestimmt, welche Fehler PHP melden soll. Standardmäßig ist der Wert dieses Konfigurationselements E_ALL & ~E_NOTICE, was bedeutet, dass PHP alle Fehler außer Fehler der E_NOTICE-Ebene meldet. Wir können dies in E_ALL ändern, um die Meldung aller Fehler zu ermöglichen, einschließlich Fehlern für undefinierte Variablen.

2. Verwenden Sie die Funktion „error_reporting“ im Code, um die Fehlerberichtsebene dynamisch festzulegen.

Zum Beispiel können wir die folgende Anweisung am Anfang des Codes verwenden, um die Meldung aller Fehler zu ermöglichen:

error_reporting(E_ALL);

3 Verwenden Sie Funktionen wie isset und empty, um zu überprüfen, ob die Variable definiert ist.

Diese Funktionen können uns helfen, vor dem Zugriff auf Variablen zu urteilen und die Verwendung undefinierter Variablen zu vermeiden.

4. Verwenden Sie den strikten Modus von PHP, um die Deklaration von Variablen vor der Verwendung zu erzwingen.

Der strenge Modus kann aktiviert werden, indem Sie die folgende Anweisung am Anfang Ihres Codes hinzufügen:

declare(strict_types=1);

Im strikten Modus löst PHP beim Zugriff auf eine undefinierte Variable einen Fehler aus und initialisiert sie nicht automatisch auf NULL. Dies hilft uns, potenzielle Probleme früher zu erkennen und zu beheben.

Zusammenfassung

Wenn wir weiterhin undefinierte Variablenfehler in PHP 7 erhalten möchten, können wir die Fehlerberichtsebene ändern, indem wir die Datei php.ini ändern oder die Funktion error_reporting verwenden und zur Überprüfung Funktionen wie isset und empty verwenden Variablen Gibt an, ob sie definiert ist, und aktiviert den strikten Modus, um die Deklaration der Variablen zu erzwingen. Diese Methoden können uns helfen, potenzielle Probleme rechtzeitig während des Entwicklungsprozesses zu erkennen und zu beheben und die Robustheit und Lesbarkeit des Codes zu verbessern.

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn die neue Ergänzung zu PHP7 nicht undefiniert meldet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn