PHP Get URL - kā iegūt pašreizējās lapas pilnu URL

Šajā PHP orientētajā rakstā mēs izpētīsim, kā iegūt pašreizējās lapas URL PHP programmēšanas valodā.

Jūs varētu vēlēties iegūt pašreizējo lapas URL šādu iemeslu dēļ:

  • Iekšējo saišu veidošana
  • Izmantojot filtrus ar GET pieprasījumiem, piemēram, currentURL.com?myFilterParameter=Food

PHP faktiski glabā daudz noderīgas informācijas, kad lietotāji pārvietojas jūsu tīmekļa lietojumprogrammā. Viens no tiem, protams, ir pašreizējais URL.

PHP glabā šos noderīgās informācijas gabalus savā super-globālo mainīgo masīvā.

Kas ir Superglobals?

PHP dzinējs jau ir definējis mainīgos lielumus, kurus var izmantot jebkura veida darbības jomās. Tie ir viegli pieejami jebkurā laikā.

Šo superglobālu ir daudz, bet mūs interesējošais ir superglobāls $ _SERVER.

$ _SERVER Superglobal

Superglobālajam mainīgajam $ _SERVER ir daudz īpašību, kurām var piekļūt ar asociatīva stila indeksu.  

Dažas no vērtībām, kurām mēs varam piekļūt, ietver:

  • HTTP_USER_AGENT
  • HTTP_HOST
  • HTTP_ACCEPT_ENCODING
  • HTTP_ACCEPT

Jūs varat redzēt vairāk no šīm norādēm PHP dokumentācijā šeit.

Tātad, kā mēs iegūstam pilnu URL?

Ņemot vērā iepriekš minētos jautājumus par superglobāliem un $ _SERVER superglobālu, mēs varam turpināt un iegūt pašreizējās lapas URL.

Šajā ekrānuzņēmumā esmu atveidojis PHP lietojumprogrammu vietējā vidē lapā ar nosaukumu "home".

URL ir // localhost / home .

Šīs lapas kodu bāzē es izmantoju mainīgo $ _SERVER .

Izmantojot šo mainīgo, mums būs jāizmanto 2 atsevišķi indeksi, lai iegūtu katru pašreizējās lapas URL daļu. Pirmā daļa būs resursdators, localhost, bet otrā daļa - lapas nosaukums, home.

Pirmais indekss, ko izmantosim, ir HTTP_HOST - pašreizējais tīmekļa adreses resursdators, piemēram, localhost vai example.com

Otrais ir REQUEST_URI, kas mums norādīs URL daļu pēc resursdatora, tāpēc tas ir kaut kas aiz localhost vai example.com

Apskatīsim to darbībā:

$currentPageUrl = '//' . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]; echo "Current page URL " . $currentPageUrl; 

Rezultāts

Un tas ir tas - diezgan vienkārši!

Kopsavilkums

Par $ _SERVER superglobal mainīgās veikali daudz vitāli svarīgu informāciju par mūsdienu izlietošanas gadījumiem. Kā mēs esam atklājuši šajā gadījumā, pašreizējās lapas URL iegūšana ir vienkārša, izmantojot iespēju piekļūt šim konkrētajam mainīgajam.

Ir vērts pārbaudīt dokumentāciju, lai uzzinātu, kādi citi indeksi tomēr ir pieejami, jo ir labi paturēt prātā, cik noderīgs var būt šis mainīgais.

Es ceru, ka jums patika šis raksts! Ja jūs to izdarījāt, pārbaudiet manu emuāru //www.codewall.co.uk/