PHP Get URL - Kuinka saada nykyisen sivun koko URL-osoite

Tässä PHP-aiheisessa artikkelissa tutkitaan, miten nykyisen sivun URL-osoite saadaan PHP-ohjelmointikielellä.

Saatat haluta saada nykyisen sivun URL-osoitteen seuraavista syistä:

  • Sisäisten linkkien luominen
  • Suodattimien käyttö GET-pyyntöjen kanssa, esimerkiksi nykyinenURL.com?myFilterParameter=Food

PHP tallentaa itse asiassa paljon hyödyllistä tietoa, kun käyttäjät liikkuvat verkkosovelluksessasi. Yksi näistä on tietysti nykyinen URL.

PHP tallentaa nämä hyödyllisen tiedon osat globaalien muuttujien joukkoon.

Mitä ovat superglobaalit?

Superglobaalit ovat jo PHP-moottorin määrittelemiä muuttujia, joita voidaan käyttää missä tahansa laajuudessa. Ne ovat helposti saatavilla kerralla.

Näitä supermaailmoja on monia, mutta kiinnostunut on $ _SERVER -maailmanlaajuinen.

$ _SERVER Superglobal

Superglobaalisella muuttujalla $ _SERVER on monia ominaisuuksia, joihin pääsee assosiatiivisen tyylihakemiston avulla.  

Joitakin arvoja, joita voimme käyttää, ovat:

  • HTTP_USER_AGENT
  • HTTP_HOST
  • HTTP_ACCEPT_ENCODING
  • HTTP_ACCEPT

Näet lisää näistä viitteistä PHP-dokumentaatiosta täältä.

Joten miten saamme koko URL-osoitteen?

Edellä olevat supermaailman ja $ _SERVER -maailmanlaajuiset kohdat huomioon ottaen voimme mennä eteenpäin ja saada nykyisen sivun URL-osoitteen.

Seuraavassa kuvakaappauksessa olen renderöin PHP-sovelluksen paikallisessa ympäristössä sivulla nimeltä "koti".

URL on // localhost / home .

Tämän sivun koodipohjassa käytän muuttujaa $ _SERVER .

Tämän muuttujan kanssa meidän on käytettävä kahta erillistä indeksiä saadaksemme kunkin osan nykyisen sivun URL-osoitteesta. Ensimmäinen osa on isäntä, paikallinen isäntä, ja toinen osa on sivun nimi, koti.

Ensimmäinen hakemisto, jota käytämme, on HTTP_HOST - nykyinen verkko-osoitteen isäntä, esimerkiksi localhost tai example.com

Toinen on REQUEST_URI, joka antaa meille osan URL-osoitteesta isännän jälkeen, joten tämä on mitä tahansa localhost tai example.com jälkeen

Katsotaanpa tämä toiminnassa:

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

Tuotos

Ja se on - melko suoraviivaista!

Yhteenveto

$ _SERVER superglobal muuttuja tallentaa paljon tärkeää tietoa nykyajan käyttöpäivä tapauksissa. Kuten olemme havainneet tässä tapauksessa, nykyisen sivun URL-osoitteen saaminen on yksinkertaista kyvyllä käyttää tätä muuttujaa.

On kuitenkin syytä tutustua dokumentaatioon nähdäksesi, mitä muita indeksejä on kuitenkin käytettävissä, koska on hyvä pitää mielessä, kuinka hyödyllinen tämä muuttuja voi olla.

Toivottavasti pidit tästä artikkelista! Jos et, tutustu blogiini, //www.codewall.co.uk/