Een snelle manier om de inhoud van een webpagina te krijgen in een string variabele in PHP is de functie " file_get_contents " te gebruiken . Echter , er zijn vele web -servers die niet toestaan webpagina inhoud moet worden vastgelegd op deze manier . In die gevallen moet u de PHP Client URL , of cURL , bibliotheek gebruiken om de pagina-inhoud ophalen en plaats het in een of meer PHP strings . Hoewel cURL een externe bibliotheek PHP wordt meestal geïnstalleerd als deel van een " standaard" PHP installatie . Instructies 1 Lees de documentatie voor de cURL bibliotheek . Besteed speciale aandacht aan de functie " curl_setopt " , die een lijst van de vele mogelijke opties die u kunt instellen met behulp van cURL bevat . Identificeer de opties die u moet instellen om gegevens gezien de bron van de gegevens en de string of strings waarin u de gegevens wilt invoegen halen . Kopen van 2 Maak een functie om een URL te nemen als een parameter , en de terugkeer van de inhoud van die URL . Stel een variabele om cURL te initialiseren . Typ bijvoorbeeld : functie get_web_page ( $ url ) { $ ch = curl_init ( ) ; 3 Gebruik de functie " curl_setopt " aan elk van de set cURL opties . Gebruik " 1 " voor " on " en " 0 " voor " off . " Stel de URL van waaruit je gaat om gegevens te extraheren , stelt u de optie om terug te keren uit het vastleggen van de URL met de gegevens die zijn opgeslagen in een variabele en stel de maximale hoeveelheid tijd te wachten als de pagina niet wordt geladen . Typ bijvoorbeeld : curl_setopt ( $ ch , CURLOPT_URL , $ url ) ; curl_setopt ( $ ch , CURLOPT_RETURNTRANSFER , 1 ) ; curl_setopt ( $ ch , CURLOPT_CONNECTTIMEOUT , 30 ) ; 4 Stel een user agent string hebben cURL voordoen als een browser , stelt u de optie om automatisch te volgen redirects , en de optie om te falen op een fout . Typ bijvoorbeeld : curl_setopt ( $ ch , ' Mozilla/5.0 ( compatible; 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 ) ; Call " curl_exec " om de gegevens te halen in een string variabele 5 . Typ bijvoorbeeld : $ webpagina = curl_exec ( $ ch ) ; 6 Controleer om te zien of er een fout ophalen van de pagina en sluit de krul transactie daarna . Typ bijvoorbeeld : if ( curl_errno ( $ ch ) ) return false ; curl_close ( $ ch ) ; return $ webpagina ; }
|