dedlfix: $this-> und self:: in Klassen

Beitrag lesen

Tach!

Statt E_ALL -1 zu verwenden schaltet am einfachsten alle Error-Level-Bits an.

bei mir steht zu Beginn jeder PHP Ressource ein error_reporting(E_ALL|E_STRICT);, solange sie im Entwicklungszustand ist. Wie ist Dein Satz gemeint?

Ein -1 wird beim üblicherweise verwendeten Zweierkomplement für vorzeichenbehaftete Integers durch eine Anzahl Bytes (je nach Größe zum Beispiel 4 oder 8) repräsentiert, bei denen alle Bits gesetzt sind. Man muss also nicht mehrere Werte mit jeweils einzeln gesetzten Bits verknüpfen, sondern kann für die gesamte Palette die Abkürzung -1 nehmen. E_ALL und Konsorten steht ja jeweils für diverse Zahlenwerte, die binär dargestellt, je ein bestimmtes Bitmuster ergeben.

Kann ich die Fehlermeldungen und Warnungen noch tiefer schrauben? Und wenn ja, wie?

Nicht tiefergehender als vom System vorgesehen. Du kannst auch die Dokumentation anschauen und alle Werte außer E_ALL (das ist schon zusammengesetzt) addieren oder or-verknüpfen, um zum selben Effekt zu kommen wie beim -1, bei dem eine Menge unausgewertete Bits zusätzlich gesetzt sind. Man müsste dazu aber immer beachten, dass das System im Laufe der Versionen erweitert wurde und im konkreten Fall auch das E_ALL anders sein kann. Mit -1 kürzt man das ab, wenn man wirklich alle möglichen und unmöglichen Werte abdecken möchte.

Das System klappt in der Regel auch anderswo, solange nicht die Logik umgedreht wurde und ein Bit nicht gesetzt sein darf, um irgendetwas in seiner vollen Breite zu aktivieren.

dedlfix.