28. juni 2002 - 09:40Der er
7 kommentarer og 1 løsning
RDF/XML fetch timeout
Hej,
Jeg har følgende funktion på min hjemmeside. Men hvis den side som jeg henter en RDF/XML strimmel fra er nede, så hænger hele min side. Er der nogen der kan hjælpe mig med at implementere en form for timeout på f.eks. 10 sek ?? Du får 200 points for det.
Cheers bilbo2
Script: function GrabNews($xml_url) {
// read and parse $file = fopen($xml_url,"r"); if (!$file) { print "<p>Unable to data file.\n"; exit; } while (!feof($file)) { $line = fgets($file, 1024); if(eregi("<title>(.*)</title>", $line, $t)) $title[] = $t[1]; if(eregi("<link>(.*)</link>", $line, $u)) $url[] = $u[1]; } fclose($file);
// give an output $i=1; while($i<count($title)) { $nuke_html .= "<li><a href=$url[$i] target=_blank>$title[$i]</a><br>\n"; $i++; }
Har lige siddet og gennemsøgt php.net for info, og den eneste mulighed jeg efterhånden kan se (udover den før nævnte set_time_limit) er at du bruger fsockopen() frem for fopen(), der kan nemlig sættes en timeout, det kan man desværre ikke med fopen()
Desværre har jeg ikke så meget tid lige nu da jeg er på vej ud af døren, men hvis du ikke lige kan få det til at virke kan jeg da kigge på det senere i aften.
Jeg tvivler på, at du ville få noget ud af at bruge set_time_limit, da det jo er *eksekveringstid* den går på - når scriptet står og venter på en forbindelse til en anden server, tæller det sandsynligvis ikke med i eksekveringstiden (på samme måde som f.eks. sleep() ikke gør det).
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.