Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Raportowanie błędów
Forum PHP.pl > Forum > PHP
hwao
Witam.

Podczas kodowania natknołem się na bardzo dziwny problem, mianowicie:
  1. <?php
  2. // Start aplikacji
  3. echo $xyz; // raportuje ze zmiennej nie ma
  4.  
  5. // W paru piewszych klasach, co dziwne wyswietla bledy, ale po dojsciu do pewnej k
    lasy, poprostu przestaja wyb wyswietlane, ale tak.. :|
  6.  
  7. class Zyx {
  8. public function foo() { echo 'foo' }
  9. public function bar() { echo $zyx; }
  10. public function newClass() {
  11.  $jakasKlasaCoIstnieje = new Cos();
  12.  $jakasKlasaCoIstnieje->nieIstniejacaMetoda(); // brak errora... i wlasnie mam die(); kodu.. bez zadnego info
  13. }
  14.  
  15. $object = new Zyx();
  16. echo $zyx2; // wyswietla error ze nie ma zmiennej
  17. $object->foo(); // dziala
  18. $object->bar(); // nie wyswietla errora, chociaz zmienna nie jest zdefiniowana
  19. $object->costam(); // nie wyswietla errora ze zemienna jest nie zdefiniowana - to tez jakos dziwnie sie zachowuje...
  20.  
  21. // koniec kodu
  22. echo $zyx3; // wyswietla ze zmiennej nie ma
  23. ?>

Jak dlamnie to nie pojete, i zaczyna mnie irytowac gdyz jak zle sobie napisze nazwe metowy to mam zgon kodu i za cholere nie moge zlokalizowac gdzie.

Ktos ma jakiess sugestie?

php: 5.0.4
Apache: 1.3

Co do raportowania error'ów to juz rozne probowałem..
crash
  1. <?php
  2. error_reporting( E_ALL );
  3. echo $xyz;
  4.  
  5. class Zyx {
  6.   public function foo() { echo 'foo'; }
  7.   public function bar() { echo $zyx; }
  8.   public function newClass() {
  9.      $jakasKlasaCoIstnieje = new Cos();
  10.      $jakasKlasaCoIstnieje->nieIstniejacaMetoda();
  11.    }
  12. }
  13.  
  14. $object = new Zyx();
  15. echo $zyx2;
  16. $object->foo();
  17.  
  18. // $object->newClass(); // - dopiero takie coś wyświetli błędy z Zyx::newClass()...
  19.  
  20. $object->bar();
  21. $object->costam();
  22.  
  23. echo $zyx3; // tego błędu nie widać, bo wyżej wystąpił błąd krytyczny...
  24. ?>

Wyjście:
Kod
Notice:  Undefined variable: xyz in D:\WEB\Apache2\www\crash.lan\test.php on line 3
Notice:  Undefined variable: zyx2 in D:\WEB\Apache2\www\crash.lan\test.php on line 15

foo

Notice:  Undefined variable: zyx in D:\WEB\Apache2\www\crash.lan\test.php on line 7
Fatal error:  Call to undefined method Zyx::costam() in D:\WEB\Apache2\www\crash.lan\test.php on line 21

Z tego co widzę wszystko działa jak należy...
chmolu
a włączyłeś opcję display_errors?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.