Weet iemand hoe ik het volgende probleem kan oplossen? :
Ik heb een rss feed in mijn pagina en nu wil ik dat als er geen feed is (ik zag laatste dat de feed even offline was?) dat hij dan netjes zegt: er is geen feed beschikbaar.
In dat geval moet je file_get_contents() inderdaad vervangen door een eigen gebakken fsockopen met timeout op iets dat redelijk is.
Je zou bijvoorbeeld dit script kunnen nemen, alle fopen/fwrite-delen die naar het lokale bestand verwijzen kunnen vervangen door het schrijven naar een variabele, en op regel 22 de timeout van 30 terug naar iets in de richting van 5, of 3 seconden brengen.
edit:
Gefeliciteerd PHP Newbie, je hebt de zoveelste die over het hoofd ziet dat:
Opmerking: This function will not work on remote files as the file to be examined must be accessible via the servers filesystem.
Nadeel is wel dat het de laadtijd van je pagina omhoog schroeft. Je bent dus al 3 sec. langer bezig.
Je zou kunnen overwegen om de uitkomst van het testen van het online zijn van de feed op de server op te slaan (serverside cachen) en die periodiek te verversen. Zo voorkom je een hogere laadtijd.
Blijkbaar tegenwoordig dus wel. Maar nu: Wat doet hij bij een 404 pagina, al geprobeerd? Of wat bij een domein waar wel een verwijzing naar is, maar niets geserveerd wordt. Hij haalt de pagina's niet op vermoed ik, want daar gaat hij veel te snel voor. Hij kijkt dus waarschijnlijk alleen of er een dns-record voor bestaat...