Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zatrzymać funkcję, zatrzymać nasłuchiwanie portu
marolek
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 2.04.2006

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


Jak można zatrzymać działanie funkcji php odczytującej plik z serwera w Internecie, w przypadku gdy zbyt długo trwa próba połączenia z tym serwerem?
Przykładowo gdy próba połączenia z serwerem trwa ponad 2 sekundy, chciałbym zatrzymać funkcję i uruchomić ją ponownie z innym adresem pliku (na innym serwerze).

Ten post edytował marolek 3.04.2006, 16:24:50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
UsTeK
post
Post #2





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 23.07.2003

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


Prosto z php.net :

  1. <?php
  2.  
  3. $fp = fsockopen("www.example.com", 80);
  4. if (!$fp) {
  5.  echo "Unable to open\n";
  6. } else {
  7.  
  8.  fwrite($fp, "GET / HTTP/1.0\r\n\r\n");
  9.  stream_set_timeout($fp, 2); // <- właśnie o to Ci chodzi!
  10.  $res = fread($fp, 2000);
  11.  
  12.  $info = stream_get_meta_data($fp);
  13.  fclose($fp);
  14.  
  15.  if ($info['timed_out']) {
  16.  echo 'Connection timed out!';
  17.  } else {
  18.  echo $res;
  19.  }
  20.  
  21. }
  22.  
  23. ?>



Pozdrawiam,
UsTeK
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 4.10.2025 - 16:45