Ett snabbt sätt att få innehållet på en webbsida till en sträng variabel i PHP är att använda " file_get_contents " funktionen . Men det finns många webbservrar som inte tillåter webbsidans innehåll som ska fångas på detta sätt . I dessa fall måste du använda PHP klient URL , eller cURL , bibliotek för att hämta sidans innehåll och placera den i en eller flera PHP strängar . Även om cURL är ett externt bibliotek för PHP , är det normalt installeras som en del av en " vanlig " PHP installation . Instruktioner
1
Granska dokumentationen för cURL biblioteket . Ägna särskild uppmärksamhet åt " curl_setopt " -funktion , som innehåller en förteckning över de många möjliga alternativ du kan ställa använder cURL . Identifiera de alternativ som du behöver för att ställa in för att hämta data med tanke på källan till uppgifterna och sträng eller strängar i vilken du kommer att infoga data .
2
Skapa en funktion för att ta en webbadress som parameter och returnera innehållet i denna webbadress . Ställ en variabel för att initiera cURL . Till exempel , typ :
funktion get_web_page ( $ url ) { $ ch = curl_init ( ) ;
3
Använd " curl_setopt " -funktion för att ställa in var och en av de cURL alternativ. Använd " 1 " för " på " och " 0 " för " off . " Ange URL: en som du kommer att extrahera data , ange alternativet att återvända från fånga URL med de data som sparas i en variabel och ställa in den maximala tid att vänta om sidan inte laddar . Till exempel , typ :
curl_setopt ( $ ch , CURLOPT_URL , $ url ) ; curl_setopt ( $ ch , CURLOPT_RETURNTRANSFER , 1 ) ; curl_setopt ( $ ch , CURLOPT_CONNECTTIMEOUT , 30 ) ;
4
Ställ en sträng user agent att ha cURL imitera en webbläsare , ställ in alternativet för att automatiskt följa omdirigeringar , och ställ in alternativet att misslyckas på ett fel . Till exempel , typ :
curl_setopt ( $ ch , " Mozilla/5.0 (Windows; U; MSIE 9.0 , Windows NT 9.0 , en-US ) ) '); curl_setopt ( $ ch , CURLOPT_FAILONERROR , 1 ) ; curl_setopt ( $ ch , CURLOPT_FOLLOWLOCATION , 1 ) ; curl_setopt ( $ ch , CURLOPT_AUTOREFERER , 1 ) ;
5
Call " curl_exec " för att hämta data i en sträng variabel . Till exempel , typ :
$ webbsida = curl_exec ( $ ch) ;
6
Kontrollera att se om det fanns ett fel hämta sidan och stäng sedan curl transaktionen . Till exempel , typ :
om ( curl_errno ( $ ch) ) return false ; curl_close ( $ ch) ; return $ webbsida ;} Addera