[php] Sprawdzanie istnienia linku

0

Witam,

mam dwie funkcje do sprawdzania czy link istnieje, ale obydwa wykonują się w ok. 5 sek to troche długo :/

pierwsza to prosty fopen:

    if($link)
{
$file = @fopen ("$link", "r");

                    }
                    if($file)
                    {     	echo "jest" ;
                        fclose($file);
                    } else {
                    	echo "nie ma";


                        }

druga: (zwraca mi tablice z kilkoma informacjami)

 $main = array();
    $ch = curl_init();
    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_HEADER, 1);
    curl_setopt ($ch, CURLOPT_NOBODY, 1);
    curl_setopt ($ch, CURLOPT_NETRC, 1);
    curl_setopt ($ch, CURLOPT_TIMEOUT, 10);
    ob_start();
    curl_exec ($ch);
    $stuff = ob_get_contents();
    ob_end_clean();
    curl_close ($ch);
    $parts = split("\n",$stuff,2);
    $main = split(" ",$parts[0],3);
return $main;

czy jest jakiś inny sposób, żeby wykonywało się to szybciej?

0

ale jaksprawdzasz link z innego serera, to bedzie problem z ajaxem

0

Są silniki które to potrafią, zaraz poszukam... (bałagan na dysku)

0

Serwer mam jak kazdy inny (płatny hosting) a linki sprawdzałem na portalach

Właśnie chcę sprawdzać linki na innych serwerach i próbowałem już z AJAXEM (advAJAX - uzywalem post,get i zawsze zwracalo status 200 nawet jak strony nie było, dla metody head - timeout), ale coś mi nie szło:/ Teraz w zasadzie też używam AJAXA, do zapytania, ale obsługuje to php

0

Kurcze... zeszło mi się z includlowaniem pliku z innego serwera.

0

Czyli żadnego pomysły jak to szybciej zrobić? :/ Na niektórych stronach widziałem, że to działa bardzo szybko (1 sek), akurat ta strona na której widziałem korzysta z Cold Fusion, ale czy różnica przez to byłaby aż tak duża?

0

daj timeout na socketa, albo skorzystaj z fsockopen

1 użytkowników online, w tym zalogowanych: 0, gości: 1