Hae koko URL -osoite PHP: stä

Retrieve Full Url Php



PHP: ssä voidaan käyttää kahdenlaisia ​​globaaleja muuttujia: superglobaalimuuttuja ja käyttäjän määrittämä muuttuja. $ _SERVER on superglobaali matriisimuuttuja, jota käytetään noutamaan nykyisen sivun koko polku. URL -osoitteen protokolla (HTTP tai HTTPS) vaaditaan myös sivun koko URL -osoitteen saamiseksi. Jos $ _SERVER [’HTTPS’] palaa 'päällä', HTTPS -protokollaa käytetään URL -osoitteen kanssa, muuten HTTP käytetään. Miten nykyisen sivun koko URL -osoite voidaan hakea käyttämällä $ _SERVER matriisi on selitetty tässä opetusohjelmassa.

Tarvittavat muuttujat

Seuraavat superglobaalimuuttujat ovat tarpeen nykyisen sivun URL -osoitteen selvittämiseksi.







Superglobaalimuuttujat Tarkoitukset
$ _SERVER [’HTTPS’] Se palaa päällä jos nykyisen sivun URL -osoitteessa käytetään HTTPS -protokollaa.
$ _SERVER [’HTTP_HOST’] Se palauttaa nykyisen sivun palvelimen nimen.
$ _SERVER [’REQUEST_URI’] Se palauttaa pyydetyn resurssin nimen.
$ _SERVER [’SERVER_PORT’] Se palauttaa palvelimen portin numeron.
$ _SERVER [’QUERY_STRING’] Se palauttaa kyselymerkkijonon arvon, jos se on nykyisen sivun URL -osoitteessa.

Esimerkki 1: Näytä nykyisen sivun URL -osoite ehdollisella lausekkeella

Seuraava esimerkki osoittaa, kuinka ehdollista lauseketta voidaan käyttää protokollan käyttämiseen nykyisen sivun URL -osoitteessa. Luo PHP -tiedosto seuraavalla komentosarjalla.



$ _SERVER [’HTTP_HOST’] -arvoa käytetään nykyisen URL -osoitteen verkkotunnuksen saamiseen. $ _SERVER [’REQUEST_URI’] -arvoa käytetään pyydetyn resurssin nimen saamiseen. mennyt) -toimintoa käytetään tarkistamaan onko $ _SERVER [’HTTPS’] joukko vai ei, ja jos asetettu, tarkista $ _SERVER [”HTTPS”] arvo päällä tai ei. Seuraavaksi näiden kolmen muuttujan arvot yhdistetään //: -merkillä, jotta nykyisen sivun koko URL -osoite saadaan.




// Lue nykyisen sivun verkkotunnus
$ verkkotunnus = $ _SERVER['HTTP_HOST'];
// Lue pyydetty resurssi
$ resurssi = $ _SERVER['REQUEST_URI'];
// Selvitä nykyisen URL -osoitteen protokolla
jos( mennyt ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS'] === 'päällä')
$ -protokollaa = https;
muu
$ -protokollaa = 'http';

// Yhdistä kaikki osat saadaksesi koko URL -osoitteen
$ url = $ -protokollaa.': //'.$ verkkotunnus.$ resurssi;
// Tulosta nykyisen sivun URL -osoite
heitti pois ''

Nykyisen URL -osoite
sivu on:

''
. $ url;?>

Lähtö:





Seuraava tulos tulee näkyviin, kun komentosarja on suoritettu palvelimelta. $ _SERVER [”HTTPS”] ei ole arvo päällä paikallista palvelinta varten. Joten lähtö näyttää http protokollaa nykyiselle URL -osoitteelle.



Esimerkki 2: Näytä nykyisen sivun URL -osoite kolminaisen operaattorin avulla

Seuraava esimerkki näyttää tavan saada nykyisen sivun koko URL -osoite kolmikantaoperaattorin avulla. Luo PHP -tiedosto seuraavalla komentosarjalla.

Jos ehtoa käytetään edellisessä esimerkissä selvittääkseen, mitä protokollaa käytetään nykyisen sivun URL -osoitteessa. Sama tehtävä suoritetaan käyttämällä tämän skriptin kolmiosaista operaattoria. mennyt) -toimintoa käytetään tarkistamaan, onko $ _SERVER [’HTTPS’] asetettu vai ei, ja onko $ _SERVER [”HTTPS”] -arvo päällä, sitten kolmivaiheinen operaattori palauttaa HTTPS -protokollan, muuten HTTP. URL -osoitteen muut osat haetaan ja tulostetaan kuten edellinen esimerkki.


// Selvitä nykyisen URL -osoitteen protokolla
$ -protokollaa = ( mennyt ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
== 'päällä'?https : 'http');
// Lue nykyisen sivun verkkotunnus
$ verkkotunnus = $ _SERVER['HTTP_HOST'];
// Lue pyydetty resurssi
$ resurssi = $ _SERVER['REQUEST_URI'];
// Yhdistä kaikki osat saadaksesi koko URL -osoitteen
$ url = $ -protokollaa.': //'.$ verkkotunnus.$ resurssi;
// Tulosta nykyisen sivun URL -osoite
heitti pois ''

Nykyisen sivun URL -osoite on:

''
. $ url;
?>

Lähtö:

Seuraava tulos tulee näkyviin, kun komentosarja on suoritettu palvelimelta. $ _SERVER [”HTTPS”] ei ole arvo päällä paikallista palvelinta varten. Joten tulos näyttää nykyisen URL -osoitteen HTTP -protokollan.

Esimerkki 3: Näytä nykyisen sivun URL -osoite portin numeron perusteella

Kahdessa edellisessä esimerkissä $ _SERVER [’HTTPS’] -arvoa käytetään selvittämään sivun nykyisen URL -osoitteen protokolla, eikä kyselymerkkijonoa käytetä URL -osoitteen kanssa. Seuraava esimerkki näyttää, kuinka muuttujaa $ _SERVER [’SERVER_PORT’] voidaan käyttää selvittämään protokolla ja noutamaan koko URL -osoite kyselymerkkijonolla. Luo PHP -tiedosto seuraavalla komentosarjalla.

Tässä protokollan selvittämiseen käytetään useita loogisia ehtoja ja kolmiosaista operaattoria. Jos $ _SERVER [”HTTPS”] -arvo on tyhjä tai asetettu arvoon vinossa, sitten se tarkistaa $ _SERVER [’SERVER_PORT’] -arvon selvittääkseen nykyisen URL -osoitteen protokollan. $ _SERVER [’QUERY_STRING’] -muuttujaa käytetään hakemaan merkkijonon arvo URL -osoitteesta.


// Selvitä nykyisen URL -osoitteen protokolla
$ -protokollaa = ((! tyhjä ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
! = 'vinossa') || $ _SERVER['PALVELIMEN PORTTI'] == 443)?'https: //' : 'http: //';
// Lue nykyisen sivun verkkotunnus
$ verkkotunnus = $ _SERVER['HTTP_HOST'];
// Lue pyydetty resurssi
$ resurssi = $ _SERVER['REQUEST_URI'];
// Lue kyselyn merkkijonon arvo
$ kysely = $ _SERVER[QUERY_STRING];
// Yhdistä kaikki osat saadaksesi koko URL -osoitteen
$ url = $ -protokollaa.$ verkkotunnus.$ resurssi;
// Tulosta nykyisen sivun URL -osoite
heitti pois ''

Nykyisen sivun koko URL -osoite on:

''
. $ url;
// Tulosta kyselymerkkijonon osa
heitti pois ''

Kyselymerkkijono on:

''
. $ kysely;
?>

Lähtö:

Seuraava tulos tulee näkyviin, kun yllä oleva komentosarja on suoritettu palvelimelta ilman kyselymerkkijonoa. URL -osoitteessa ei ole kyselymerkkijonoa. Tulos näyttää siis tyhjän kyselymerkkijonon.

Seuraava tulos tulee näkyviin, kun yllä oleva komentosarja on suoritettu palvelimelta kyselymerkkijonolla. Seuraava tuloste näyttää URL -osoitteen kyselymerkkijonolla ja kyselymerkkijonolla erikseen.

Johtopäätös

Tässä opetusohjelmassa esitetään erilaisia ​​tapoja hakea nykyisen sivun koko URL -osoite erilaisilla esimerkeillä. Tässä opetusohjelmassa esitetään myös tapa erottaa URL -osoite ja kyselymerkkijono. Toivottavasti tämä opetusohjelma auttaa lukijoita tietämään tavan lukea nykyisen sivun koko URL -osoite PHP -komentosarjan avulla.