PHP Få innholdet på en nettside, RSS-feed eller XML-fil til en strengvariabel
Du vil ofte ha behov for å få tilgang til data som ligger på en annen server, enten du skriver en online RSS-aggregator eller gjør skjermskraping for en søkemekanisme. PHP gjør å trekke disse dataene inn i en strengvariabel en ekstremt enkel prosess.
Du kan gå med den veldig korte metoden:
$ url = "https://www.howtogeek.com";
$ str = file_get_contents ($ url);
Det eneste problemet med den metoden er at noen webverter har tilgang til nettadressen blokkert i filmetodene av sikkerhetsmessige årsaker. Du kan kanskje bruke denne løsningsmetoden i stedet:
funksjon get_url_contents ($ url) $ crl = curl_init (); $ timeout = 5; curl_setopt ($ crl, CURLOPT_URL, $ url); curl_setopt ($ crl, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ crl, CURLOPT_CONNECTTIMEOUT, $ timeout); $ ret = curl_exec ($ crl); curl_close ($ CRL); returner $ ret;
Du bør nå ha innholdet på nettsiden i en strengvariabel. Vær oppmerksom på at dette ikke trekker ned støttefiler som javascript eller CSS. Du må videre analysere siden og hente dem separat hvis du trenger hele greia.