Hent hele URL -en i PHP

Retrieve Full Url Php



To typer globale variabler kan brukes i PHP: den superglobale variabelen og den brukerdefinerte variabelen. $ _SERVER er en superglobal matrisevariabel som brukes til å hente hele banen til gjeldende side. Protokollen (HTTP eller HTTPS) for URL -en er også nødvendig for å få hele URL -en til siden. Hvis $ _SERVER [‘HTTPS’] returnerer 'på', da vil HTTPS bli brukt med URL -adressen, ellers HTTP vil bli brukt. Hvordan hele URL -adressen til gjeldende side kan hentes ved hjelp av $ _SERVER array har blitt forklart i denne opplæringen.

Nødvendige variabler

Følgende superglobale variabler kreves for å finne ut URL -adressen til den gjeldende siden.







Superglobale variabler Formål
$ _SERVER [‘HTTPS’] Det kommer tilbake hvis HTTPS -protokollen brukes i URL -en til den gjeldende siden.
$ _SERVER [‘HTTP_HOST’] Det returnerer navnet på serveren til den gjeldende siden.
$ _SERVER [‘REQUEST_URI’] Den returnerer det forespurte ressursnavnet.
$ _SERVER [‘SERVER_PORT’] Det returnerer portnummeret til serveren.
$ _SERVER [‘QUERY_STRING’] Den returnerer spørringsstrengverdien hvis den finnes i URL -adressen til den gjeldende siden.

Eksempel 1: Vis nettadressen til gjeldende side ved hjelp av en betinget setning

Følgende eksempel viser hvordan den betingede setningen kan brukes til å få protokollen brukt i URL -en til den gjeldende siden. Lag en PHP -fil med følgende skript.



Verdien av $ _SERVER [‘HTTP_HOST’] brukes til å hente domenenavnet til den nåværende nettadressen. Verdien av $ _SERVER [‘REQUEST_URI’] brukes til å hente navnet på den forespurte ressursen. borte) funksjonen brukes til å sjekke om $ _SERVER [‘HTTPS’] er et sett eller ikke, og hvis det er satt, så sjekk verdien av $ _SERVER [‘HTTPS’] er det eller ikke. Deretter kombineres verdiene til disse tre variablene med ‘//:’ for å hente hele URL -en til gjeldende side.




// Les domenenavnet til den gjeldende siden
$ domene = $ _SERVER['HTTP_HOST'];
// Les den forespurte ressursen
$ ressurs = $ _SERVER['REQUEST_URI'];
// Finn ut protokollen til gjeldende nettadresse
hvis( borte ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS'] === 'på')
$ -protokoll = 'https';
ellers
$ -protokoll = 'http';

// Kombiner alle delene for å få hele URL -adressen
$ url = $ -protokoll.': //'.$ domene.$ ressurs;
// Skriv ut URL -adressen til gjeldende side
kastet ut '

URL -adressen til gjeldende
siden er:

'
. $ url;?>

Produksjon:





Følgende utdata vises etter at skriptet er kjørt fra serveren. Verdien av $ _SERVER [‘HTTPS’] er ikke for den lokale serveren. Så utgangen viser http protokoll for gjeldende URL.



Eksempel 2: Vis nettadressen til gjeldende side ved hjelp av ternary operator

Følgende eksempel viser hvordan du får hele URL -en til gjeldende side ved hjelp av den ternære operatøren. Lag en PHP -fil med følgende skript.

Hvis betingelsen brukes i forrige eksempel for å finne ut hvilken protokoll som brukes i URL -en til den gjeldende siden. Den samme oppgaven utføres ved å bruke den ternære operatoren i dette skriptet. borte) funksjonen brukes til å kontrollere om $ _SERVER [‘HTTPS’] er et sett eller ikke, og om verdien til $ _SERVER [‘HTTPS’] er på, da vil den ternære operatøren returnere HTTPS, ellers vil den returnere HTTP. De andre delene av URL -en hentes ut og skrives ut som forrige eksempel.


// Finn ut protokollen til gjeldende nettadresse
$ -protokoll = ( borte ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
== 'på'?'https' : 'http');
// Les domenenavnet til den gjeldende siden
$ domene = $ _SERVER['HTTP_HOST'];
// Les den forespurte ressursen
$ ressurs = $ _SERVER['REQUEST_URI'];
// Kombiner alle delene for å få hele URL -adressen
$ url = $ -protokoll.': //'.$ domene.$ ressurs;
// Skriv ut URL -adressen til gjeldende side
kastet ut '

URL -adressen til den nåværende siden er:

'
. $ url;
?>

Produksjon:

Følgende utdata vises etter at skriptet er kjørt fra serveren. Verdien av $ _SERVER [‘HTTPS’] er ikke for den lokale serveren. Så utgangen viser HTTP -protokollen for den nåværende URL -en.

Eksempel 3: Vis nettadressen til gjeldende side basert på portnummer

I de to foregående eksemplene brukes verdien av $ _SERVER [‘HTTPS’] for å finne ut protokollen for den nåværende nettadressen til siden, og ingen søkestreng brukes med nettadressen. Følgende eksempel viser hvordan $ _SERVER [‘SERVER_PORT’] -variabelen kan brukes til å finne ut protokollen og hente hele URL -adressen med spørringsstrengen. Lag en PHP -fil med følgende skript.

Her brukes flere logiske forhold og ternær operatør for å finne ut protokollen. Hvis verdien til $ _SERVER [‘HTTPS’] er tom eller satt til av, så vil den sjekke verdien av $ _SERVER [‘SERVER_PORT’] for å finne ut protokollen til den nåværende URL -en. $ _SERVER ['QUERY_STRING'] - variabelen brukes til å hente spørringsstrengverdien fra nettadressen.


// Finn ut protokollen til gjeldende nettadresse
$ -protokoll = ((! tømme ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
! = 'av') || $ _SERVER['SERVER_PORT'] == 443)?'https: //' : 'http: //';
// Les domenenavnet til den gjeldende siden
$ domene = $ _SERVER['HTTP_HOST'];
// Les den forespurte ressursen
$ ressurs = $ _SERVER['REQUEST_URI'];
// Les verdien for spørringsstrengen
$ forespørsel = $ _SERVER['QUERY_STRING'];
// Kombiner alle delene for å få hele URL -adressen
$ url = $ -protokoll.$ domene.$ ressurs;
// Skriv ut URL -adressen til gjeldende side
kastet ut '

Den fullstendige URL -adressen til den nåværende siden er:

'
. $ url;
// Skriv ut spørringsstrengen
kastet ut '

Spørringsstrengen er:

'
. $ forespørsel;
?>

Produksjon:

Følgende utdata vises etter at skriptet ovenfor er utført fra serveren uten noen spørringsstreng. Ingen søkestreng er angitt i nettadressen. Så utgangen viser den tomme spørringsstrengen.

Følgende utdata vises etter at skriptet ovenfor er utført fra serveren med spørringsstrengen. Følgende utdata viser URL -adressen med spørringsstrengen og spørringsstrengen separat.

Konklusjon

Ulike måter å hente hele URL -en til gjeldende side er vist i denne opplæringen ved hjelp av forskjellige eksempler. Måten å skille nettadressen og spørringsstrengen på er også vist i denne opplæringen. Forhåpentligvis vil denne opplæringen hjelpe leserne med å vite måten å lese hele URL -en til gjeldende side ved hjelp av PHP -skriptet.