Hello,
Hello,
Es könnte auch sein, dass die Ressource gerade gesperrt ist für das lesen. Dann lohnt es sich ggf. ein paar Millisekunden später nochmals nachzufragen...
Gesperrt? Welcher HTTP-Status-Code ist das? Ist dir sowas schonmal in freier Wildbahn beim Browsen begegnet?
Man bekommt dann nur eine Timeout für den Stream. Fsockopen funktioniert aber.
Ich hatte das auch schon mal ausprobiert. Muss mal suchen, wie die Fehlermeldung dann lautet.Wie sich das dann auf file() auswirkt, was ja beide Funktionalitäten vereint, habe ich aber nicht ausprobiert.
Ich habe das jetzt nochmal ausprobiert.
üblicherweise fürde man bei Verwendung von fopen() vorher ein Read-Timeout einstellen, dass kleiner ist, als die Maximlae Ausführungszeit des Scriptes.
http://www.php.net/manual/en/function.stream-set-timeout.php
Das muss man bei file() über den Parameter Ressource-Kontext tun.
Da muss man sich dann gewaltig durchhangeln, um alles richtig einzustellen.
Man landet letztendlich bei
http://www.php.net/manual/en/context.http.php
also:
http://www.php.net/manual/en/function.stream-context-create.php
http://www.php.net/manual/en/function.stream-context-set-option.php
http://www.php.net/manual/en/context.http.php
Viel Spaß dabei :-O
Das Array sollte man sich irgendwo mit seinen Wunschwerten gefüllt beiseite legen ;-)
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg