Søke Maskinen Vennlig PHP Sider
Zend Teknologiene Koden Altan Spotlight Søke Maskinen Vennlig PHP Sider
Nå da du har en bedre forståelse av problemet, lets’ betrakte oppløsningen. I orden for en edderkopp å travers ( og følgelig indeks) en gitt side, det URL må være ledig av alle opptreden av parameterene. Bortsett fra hvis en gitt side behøver parameterene å funksjonen riktig, hva kan gjort? Besvarelsen lies inne bruken av det $PATH_INFO omgivelsene variabel, hvilke du kanne konvertere en URL fra…
http://www.zend.com/myscript.php?myvalueHello=
…å en edderkopp- vennlig formatter:
http:/www.zend.com/myscript.php/myvalue/ God dag
Bli oppmerksom på, at det edderkopp- vennlig formatter behersker nei markeringen det der er alle parameterene tilværelse passert i det hele tatt. Temmelig, den bare ser ut like vi prøver å adgang telefonkatalog på zend.com sted myscript.php/myvalue/ God dag, og alle søke maskinen edderkopp det innlogget det side wont’ ha alle bekymring fulgte det URL. Ennå i realiteten vi er utfører manuskriptet myscript.php.
Bortsett fra hva skjedd å din parameterene?
Hvor å BLI din gjemt data
Nå da du har med hell gjemt din parameterene innen hva fremgår å bli en adresseliste struktur, god dag bli seg ut? Når som helst en PHP skriften er henrettet med ekstra sti data tilføyet til det siste av filnavnet ( idet vi did inne det edderkopp- vennlig eksempel over), det Web server skaper en omgivelsene variabel $PATH_INFO inneholder denne beskjed. Du kanne så adgang denne omgivelsene variabel igjennom PHP automatisk, og analysere den å gjenerverve våre data. Så våre tidligere URL…
http:/www.zend.com/myscript.php/myvalue/ God dag
/…ville befolke det $PATH_INFO variabel med:
myvalue/ God dag
…hvorfra du kanne så analysere og gjenerverve det passert beskjed.
Desiffrerer din data
Nå da som du vet der hvor din parameterene er, morgendagen steg er å tyde seg i en formatter det PHP kanne bruk. Til tross for det er nei krevde metoden for gjør denne, Onde’ anta det du har formatert din data på følgende måte:
var_name/var_data/var2_name/var2_data/…
Benytter denne metoden, alt hva er forlatt er å:
* brekke det forsynt hyssing hver gang vi møte en slash (’/')
* opprette variabler å partner det gitt navn (var_name, var2_name, etc.) med deres respekt verdier (var_data, var2_data, etc.)
Med alle av denne inne sinn, lets’ betrakte noe virkelig koden.
Manuskriptet
Idet med mange kraftfull teknikker, koden krevde å opprette denne evne inne din manuskripter er ikke vanskelig å utvikle. Prosessen består av travers en oppstille basert på det $PATH_INFO, og skaper variabler basert på det data. Til sist, objektet er å ta URL…
http:/www.zend.com/myscript.php/myvalue/ God dag
/…så bruk informasjonen forsynt inne det $PATH_INFO variabel å bygge tilsvarende variabler:
$myvalue = “ god dag”
Koden flyte
* Sjekk for eksistensen av $PATH_INFO
* Up $PATH_INFO i en oppstille
* Hvis det sum antallet av parameterene er aften, sammenlegge en ekstra tom emballasje component til sist å forenkle det travers inne morgendagen steg
* Travers oppstille og opprette variabler basert på det $PATH_INFO data
ifissetPATH_INFO(($)) {
$vardata = eksplodere(/', $PATH_INFO);
$num_param = countvardata($);
ifnum_param($ % 2 == 0) {
$vardata[] = '';
$num_param ;
}
for(var $i = 1; $i <$num_param; $i="2)" {
$$vardatai[$] = $vardatai[$ 1];
}
}
?>
Arkivert underUncategorized |































