<?php // 1. Kapcsolja ki az összes hibajelentést. --- Turn off error reporting. error_reporting(0); // 2. Futásidejű hibák jelentése. --- Report runtime errors. error_reporting(E_ERROR | E_WARNING | E_PARSE); // 3. Jelentse az összes hibát. --- Report all errors. error_reporting(E_ALL); // 4. Ugyanaz, mint a error_reporting(E_ALL); --- Same as error_reporting(E_ALL); ini_set("error_reporting", E_ALL); // 5. Jelentse az összes hibát, kivéve az E_NOTICE --- Report all errors except E_NOTICE error_reporting(E_ALL & ~E_NOTICE); ?> |
Megjegyzés:
A PHP hibajelentéseknél, eltérés lehet annak verziójától.
Például:
Otthoni tesztelésnél nem kapunk hibajelentést, de szerverre történő telepítésnél hibajelzést kapunk.
OKA:
Otthon nem olyan PHP verzióval dolgozunk, mint a tárhely szerverén lévő PHP verzió.
Ezért a tárhelyre történő telepítést követően, teszteljük programunkat.
Majd nézzük meg az error_log fájl-ban, hogy van-e hibajelentés.
Ha van hibajelentés, keressünk rá a megadott sorra, hogy mi az oka, és javítsuk ki a hibát.
Előfordulhat, hogy a jelzett hiba, nem befolyásolja a programunk működését és tudunk is róla,
de javítani nem akarjuk.
Ekkor helyezzük el php fájlunk elején, (Minden html kimenet előtt.)
<?php error_reporting(0); ?>
Egy példa:
Itt a program egy tömbből kérdez le adatokat, majd a nekünk szükségeseket,
a count_chars(); és if feltétel szelektálja, majd betölti egy másik tömbbe,
melyek lehetnek számok és számok string formátumban is.
Erre a következő hibajelentést kapjuk:
PHP Warning: ( Warning = Figyelem; Figyelmeztetés; )
A non-numeric value encountered -- Nem numerikus érték található
xxx/valami.php on line 352 --- Hiba a 352-ik sorban.
Milyen adatok lehetnek, melyeknél nem numerikus értékű is, található: A következő adatokkal nem végzünk matematikai műveleteket, csak statisztikai szerepük van. 32 Ez az adat kell. -- numeric 32. Ez az adat kell. -- string 032 Ez az adat, nem fontos, de ha szerepel, nem baj. -- Nem szabályos numeric. 32.032 Ez az adat kell. -- lehet numeric és string is.
Mivel az adatok statisztikai szempontból kellenek, azaz, mindegy hogy numeric vagy string, ezért a
hibajelentést figyelembe vesszük, de le is tíltjuk, így:
<?php error_reporting(0); ?>