Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] File_get_contents jak sprawdzić czy otworzył poprawnie stream...
Forum PHP.pl > Forum > Przedszkole
nawasaqi
Witam mam takie pytanie mianowicie mam kawałek kodu skryptu który wyciąga mi dane ze strony...

  1. $options = array('http' => array('user_agent' => 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0'));
  2. $context = stream_context_create($options);
  3. $response = file_get_contents($link, false, $context);
  4. $pattern = '#<h2><a title="Zobacz informacje szczegółowe" href="(.+?)" class=#si';
  5.  
  6.  
  7. preg_match_all($pattern, $response, $matches);
  8.  


I teraz mam problem mianowicie bo czasami mi wywala błąd..

  1. file_get_contents(http://jakasstrona,211.html?sort=2): failed to open stream: HTTP request failed! HTTP/1.1 404 in C:\wamp\www\test2\generuj.php on line 69


Czyli mniemam że nie potrafi otworzyć tej strony ale jak wkleję ją do przeglądarki jest oki... 210 stron przeanalizuje a na 211 wywala mi np. taki błąd jak wyżej.

Czy można to jakoś sprawdzić aby sprawdzał czy $response pobrała prawidłowo zawartość strony jeśli nie to ma to ponowić... rozumiem że funkcja if else możemy to załatwićquestionmark.gif

if (isset($response) == '')

questionmark.gif
Czy źle rozumuję questionmark.gif

Przepraszam ale dopiero raczkuje w PHP wink.gif także proszę o wyrozumiałość...
Turson
Cytat
On failure, file_get_contents() will return FALSE.

http://www.php.net/manual/en/function.file-get-contents.php

więc if($response)
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.