Ajax er blevet en populær JavaScript kodning teknik til at designe web-applikationer , der opfører sig mere som desktop applikationer ved at sende og modtage data uden en hel side opdateringshastighed . Desværre browsers sikkerhedsindstillinger forhindrer dine scripts fra at læse sider på en ekstern server. Heldigvis , PHP giver en side på din egen server til at hente eksterne data og gøre den tilgængelig for din JavaScript. Ved at bruge JavaScript Object Notation ( JSON ), kan du også lave en PHP script , der gør eksterne data til rådighed for JavaScript på alle server. Instruktioner
Henter data med cURL
1
Opret en funktion i PHP , der modtager en ekstern URL som eneste parameter.
Funktion fetch_url ( $ url) {
< p> }
2
Opret en ny cURL forbindelse i funktion
$ lm = curl_init (); .
3
Set muligheder for cURL forbindelsen . De vigtige muligheder er URL'en der skal hentes , afkast -transfer (der skal sættes til "1 " for at læse den eksterne server respons) og en forbindelse timeout.
Curl_setopt ( $ lm, CURLOPT_URL , $ url) ;
curl_setopt ( $ lm, CURLOPT_RETURNTRANSFER , 1 ),
curl_setopt ( $ lm, CURLOPT_CONNECTTIMEOUT , 15)
4
Udfør cURL -forbindelse, og derefter gemme den eksterne serverens svar i en variabel
$ data = curl_exec ( $ ch ) .
5.
Luk cURL forbindelsen for at frigøre server ressourcer
< . p> curl_close ( $ ch ),
6
Afslut funktionen ved at returnere indholdet af "$ data " variable . Den fulde kode funktionen er : Hej
funktion fetch_url ( $ url) {
$ lm = curl_init ();
curl_setopt ( $ lm, CURLOPT_URL , $ url) ;
curl_setopt ( $ lm, CURLOPT_RETURNTRANSFER , 1 ),
curl_setopt ( $ lm, CURLOPT_CONNECTTIMEOUT , 15) ;
$ data = curl_exec ( $ ch ) ; < br >
curl_close ( $ ch ),
tilbagevenden $ data
}
Henter data Med fopen
7
Opret en funktion i PHP , der modtager en ekstern URL som eneste parameter. Denne funktion vil hente eksterne data ved hjælp af " fopen ", da nogle servere ikke understøtter krøller.
Funktion fetch_url ( $ url) {
}
8
Opret en fil stream i den funktion, der er indstillet til at læse tilstand
$ fs = fopen ( $ url , "r "); .
9
Læs indholdet af URL'en ved hjælp af " stream_get_contents ", og gemme dem i en variabel
$ data = stream_get_contents ($ fs ), . .
10
lukke filen stream at frigøre server ressourcer
< p > fclose ( $ fs )
11
Retur indholdet af "$ data " variabel og afslutte funktionen . Den fulde kode fetch_url () er : Hej
funktion fetch_url ( $ url) {
$ fs = fopen ( $ url , "r ");
$ data = stream_get_contents ($ fs ),
fclose ( $ fs ),
tilbagevenden $ data
}
Udsendelse data
12
Indstil den webadresse, du vil have din PHP script til at hente . Dette kan videregives til scriptet som en parameter eller et sæt i scriptet
$ url = " http://www.example.com " .
13
Brug fetch_url . funktion til at hente indholdet af webadressen og gem dem i en variabel
$ fetch_data = fetch_url ( $ url) ;
14
Echo indholdet af variablen hvis du kun ønsker . lokal JavaScript for at kunne bruge det
echo $ fetch_data ,
15
Encode data med JSON før ekko , hvis du ønsker eksterne JavaScripts at være i stand til at bruge din PHP script. JSON har også andre fordele, såsom at tillade dig at passere flere variable til JavaScript. Nedenstående eksempel passerer både indholdet af URL'en samt selve URL'en
$ output [' url '] = $ url ; .
$ Output [' indhold '] = $ fetch_data ;
$ output = json_encode ( $ output) ;
echo $ output;
16
Punkt eventuelle Ajax opkald i din JavaScript i URL for PHP script . Din JavaScript kan nu hente data fra stort set overalt på internettet.