Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] problem z catch i try
Forum PHP.pl > Forum > Przedszkole
Balon
Napisalem sobie taka prosta klase zeby zapoznac sie z catch i try...

  1. <?php
  2. class online 
  3. {
  4. private $ip;
  5. private $socket;
  6. private $timeStart;
  7. private $timeEnd;
  8. private $errno;
  9.  
  10. function __construct( $ip, $socket = 80 )
  11. {
  12. $this->ip = $ip;
  13. $this->socket = $socket;
  14. }
  15.  
  16. function timer()
  17. {
  18. $time = explode( ' ', microtime() );
  19. $sec = (double) $time[1];
  20. $msec = (double) $time[0];
  21. return $sec + $msec;
  22. }
  23.  
  24. function getTime()
  25. {
  26. return $this->timeEnd = $this->timeStart - $this->timer();
  27. }
  28.  
  29. function isOnline()
  30. {
  31. $this->timeStart = $this->timer();
  32.  
  33. if( !fsockopen( $this->ip, $this->socket, $this->errno ) )
  34. {
  35. throw new Exception( 'OFFLINE', $this->errno );
  36. }
  37. else 
  38. {
  39. throw new Exception( 'ONLINE - time: '.$this->getTime, $this->errno );
  40. }
  41. }
  42. }
  43.  
  44. try
  45. {
  46. $o = new online( 'www.wp.pl', 80 );
  47. $o->isOnline();
  48. }
  49. catch ( Exception $e )
  50. {
  51. echo $e->__toString();
  52. }
  53. ?>

no i nic nie jest wyswietlane... dlaczego ? co zle robie ?
nospor
a na jakiej wersji php to uruchamiasz? bo na php4 to ci nie pojdzie smile.gif
A na php5 smiga aż milo... no z malym wyjątkiem:
nie: $this->getTime
a: $this->getTime()
Balon
http://balondesign.ovh.org/online.class.php

nic nie pokazuje... :/ tak samo jak na localu
Pigula
nie wiem czy to pomoze ale zmien rozszerzenie na php5 czyli online.class.php5. na srewerach gdzie dziala i php4 i php5 to zeby skrypt byl przetworzony musi miec takie rozszerzenie.

pozatym metode __toString() mozna wywolywac jako:
  1. <?php
  2. echo $e;
  3. ?>
Balon
i zero nadal to samo....nie dziala i na localu i na sevrerze....
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.