Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Raportowanie błędów w __autoload()
PiratNowegoPokol...
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 12.10.2006

Ostrzeżenie: (0%)
-----


hmmm ... napotkałem na pewien problem ... i nie mam pojęcia dlaczego tak sie dzieje ohmy.gif
  1. <?php
  2. function __autoload( $sClassName )
  3. {
  4. if( !@API::LibLoad( $sClassName ) )
  5. {
  6. if( !API::InterfaceLoad( $sClassName ) )
  7. {
  8. echo 1111;
  9. trigger_error( 2222 , E_USER_WARNING ); 
  10. }
  11.  
  12. }
  13. }
  14. set_error_handler('error_handler');
  15. function error_handler( $iErrorNum , $sError , $sFile , $iLine )
  16. {
  17. if( !error_reporting() )
  18. {
  19. return true;
  20. }
  21.  
  22. switch( $iErrorNum )
  23. {
  24. case E_ERROR:
  25. case E_USER_ERROR:
  26.  
  27. echo '<b>Fatal Error</b>';
  28. echo '<br>' . $sError . EOL;
  29.  
  30. echo '<br>Błąd wystąpił w pliku ' . $sFile;
  31. echo ' ( Linia : ' . $iLine . ' ) ';
  32.  
  33. echo '<br><i>Now this page is indisposed. Try in future</i>' . EOL;
  34.  
  35.  
  36. case E_WARNING:
  37. case E_USER_WARNING:
  38. echo '<br><b>Warning : </b> ' . $sError . ' ( błąd wystąpił w : <b>' . $sFile . '</b> w lini : ' . $iLine . ')';
  39. echo EOL ;
  40. break;
  41.  }
  42.  
  43.  return true;
  44. }
  45. ?>

przykład "użycia"
  1. <?php
  2. new COstam();
  3. ?>

To wysyłanie błędów w _autoload() w tym momencie służy tylko pokazowi ...
więc tak ...
Jeśli biblioteki nie będzie to wywali :
Kod
1111

blinksmiley.gif
według mnie powinno jeszcze wywalić też E_USER_WARNING czego z nieznanych powodów nie robi ...
Jeżeli trigger_error() postawie poza tymi instrukcjami warunkowymi to sie wyświetli

Dlaczego :?: Co robie źle :?:

----- EDIT ------
PS: chciałbym jeszcze dodać że API::LibLoad i InterfaceLoad wysyłają E_USER_ERROR ...

Ten post edytował PiratNowegoPokolenia 26.04.2007, 19:45:16
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 12:55