Hvordan omdirigere i PHP

Hvordan omdirigere i PHP
URLen i brukerens nettleser kan endres fra et sted til et annet ved å bruke omdirigering. Omdirigering er nødvendig for mange formål, for eksempel å bytte fra HTTP til HTTPS, endre domene osv. Når brukeren sender en forespørsel om en side til serveren som ikke eksisterer eller på en sideplassering som har endret seg, vil serveren sende informasjonen om den nye URLen med 301 eller 302 HTTP -kode. Det vil hjelpe brukeren å vite om den nye URL -en ved omdirigering, og brukeren vil sende en forespørsel til det nye stedet for å få ønsket innhold. URL -en omdirigerer i PHP ved å bruke overskriften () funksjon. Hvordan i Overskrift() Funksjon kan brukes i PHP for å omdirigere URL fra en side til en annen side vises i denne opplæringen.

Header () -funksjon

Det er en innebygd PHP-funksjon å sende den rå HTTP-overskriften til klienten. Syntaksen til denne funksjonen vises nedenfor.

Syntaks:
header ($ header, [$ erstatt, [$ http_response_code]])

Denne funksjonen kan ta tre argumenter. Det første argumentet er obligatorisk, og de to siste argumentene er valgfrie. De $ header brukes til å lagre overskriftsstrengen som inneholder plasseringen av omdirigering. De $ erstatt definerer om du skal erstatte den forrige lignende overskriften, og verdien av dette argumentet er boolsk. De $ http_response_code brukes til å lagre en spesifikk responskode som vil sende til brukeren.

Eksempel-1: Redirect URL med standard statuskode

Opprett en PHP -fil med følgende kode som vil omdirigere til det nye stedet etter å ha ventet i 2 sekunder. Her, The dø() Funksjon brukes til å avslutte skriptet. Når Overskrift() funksjon brukes med ett argument, da 302 brukes som standard http -kode.

// Vent i 2 sekunder
søvn (2);
// omdirigere til det aktuelle stedet
Header ("Sted: http: // localhost/php/contactform/index.html ");
dø();
?>

Produksjon:
Etter å ha utført koden, blir URLen omdirigert til stedet http: // localhost/php/contactform/index.HTML etter 2 sekunder. Hvis du inspiserer koden og åpner Nettverk Tab, da vil den vise 302 som standard statuskode.

Eksempel-2: omdirigere URL permanent

Opprett en PHP -fil med følgende kode som vil omdirigere til det nye stedet etter å ha ventet i 2 sekunder. Her, The dø() Funksjon brukes til å avslutte skriptet. Her, The Overskrift() Funksjon brukes med tre argumenter. De EKTE brukes til det andre argumentet og 301 brukes til det tredje argumentet. De 301 Statuskode brukes til å omdirigere permanent.

// Vent i 2 sekunder
søvn (2);
// omdirigere til det aktuelle stedet
Header ("Sted: http: // localhost/php/contactform/index.html ", true, 301);
dø();
?>

Produksjon:
Etter å ha utført koden, blir URLen omdirigert til stedet http: // localhost/php/contactform/index.HTML etter 2 sekunder. Hvis du inspiserer koden og åpner Nettverk Tab, da vil den vise 301 Som statusakode som indikerer at URLen flyttes permanent.

Eksempel-3: Omdirigering av URL midlertidig

Opprett en PHP -fil med følgende kode som vil omdirigere til det nye stedet etter å ha ventet i 2 sekunder. Her, The dø() Funksjon brukes til å avslutte skriptet. Her, The Overskrift() Funksjon brukes med tre argumenter. De EKTE brukes til det andre argumentet og 307 brukes til det tredje argumentet. Statuskoden 307 brukes til å omdirigere midlertidig.

// Vent i 2 sekunder
søvn (2);
// omdirigere til det aktuelle stedet
Header ("Sted: http: // localhost/php/contactform/index.html ", true, 307);
dø();
?>

Produksjon:
Etter å ha utført koden, blir URLen omdirigert til stedet http: // localhost/php/contactform/index.HTML etter 2 sekunder. Hvis du inspiserer koden og åpner Nettverk Tab, da vil den vise 307 Som statusakode som indikerer at URLen blir omdirigert midlertidig.

Eksempel-4: omdirigere URL basert på tilstanden

Opprett en PHP -fil med følgende kode som vil omdirigere URL -en basert på den betingede uttalelsen. En HTML-skjema er designet i skriptet for å omdirigere URL basert på den valgte verdien av rullegardinlisten. Her inneholder rullegardinlisten tre verdier. Når Google er valgt fra rullegardinlisten, så vil PHP-skriptet omdirigere URL-en til stedet https: // google.com med standard statuskode, 302. Når Linuxhint er valgt fra rullegardinlisten, da vil PHP-skriptet omdirigere URL-en til stedet https: // linuxhint.com med statuskode 301. Når Fahmidasclassroom er valgt fra rullegardinlisten, deretter vil PHP-skriptet omdirigere URL-en til stedet, https: // fahmidasclassroom.com med statuskode, 302.



Eksempel






// Sjekk sendeknappen er trykket på eller ikke
if (isset ($ _ post ["Send"]))

if ($ _ post ['web'] == 'google')

// omdirigere til det aktuelle stedet
Header ("Sted: https: // google.com ");

elseif ($ _ post ['web'] == 'linuxhint')

// omdirigere til det aktuelle stedet
Header ("Sted: https: // linuxhint.com ", true, 301);

ellers

// omdirigere til det aktuelle stedet
Header ("Sted: https: // fahmidasclassroom.com ");

dø();

?>

Produksjon:
Etter å ha utført koden, vises følgende utdata i nettleseren som viser en rullegardinliste med tre verdier og en knapp. Statuskoden er 200 nå. Etter omdirigering vil statuskoden endres.


Hvis Google vil velge mellom rullegardinmenyen, så vil den omdirigere til stedet https: // google.com etter å ha trykket på knapp, og følgende bilde vises. Standard statuskode, 302, genereres her.


Hvis Linuxhint Velger fra rullegardinmenyen, så vil den omdirigere til stedet https: // linuxhint.com etter å ha trykket GO knapp, og følgende bilde vises. Den permanente statuskoden, 301, genereres her.

Konklusjon:

De forskjellige bruken av PHP Overskrift() Funksjon blir forklart i denne opplæringen ved å bruke flere eksempler. Omdirigering kan gjøres midlertidig og permanent basert på statusloven som brukes i Overskrift() funksjon. Denne opplæringen vil hjelpe leserne til å vite mer om formålet med omdirigering og bruke den ved å bruke PHP -skript i webapplikasjonen deres når det er nødvendig.