Szükséges változók
A következő szuperglobális változókra van szükség az aktuális oldal URL -címének megismeréséhez.
Szuperglobális változók | Célok |
---|---|
$ _SERVER [’HTTPS’] | Visszatér tovább ha HTTPS protokollt használ az aktuális oldal URL -jében. |
$ _SERVER [’HTTP_HOST’] | Visszaadja az aktuális oldal szerverének nevét. |
$ _SERVER [’REQUEST_URI’] | Visszaadja a kért erőforrásnevet. |
$ _SERVER [’SERVER_PORT’] | Visszaadja a szerver portszámát. |
$ _SERVER [’QUERY_STRING’] | Visszaadja a lekérdezési karakterlánc értékét, ha létezik az aktuális oldal URL -címében. |
1. példa: Jelenítse meg az aktuális oldal URL -jét feltételes utasítással
A következő példa bemutatja, hogy a feltételes utasítással hogyan lehet lekérni az aktuális oldal URL -jében használt protokollt. Hozzon létre egy PHP fájlt a következő szkripttel.
A $ _SERVER [’HTTP_HOST’] értékét használjuk az aktuális URL domainnevének lekérésére. A $ _SERVER [’REQUEST_URI’] értékét használjuk a kért erőforrás nevének lekérésére. elmúlt) függvény annak ellenőrzésére szolgál, hogy a $ _SERVER [’HTTPS’] készlet -e vagy sem, és ha be van állítva, akkor ellenőrizze a $ _SERVER [’HTTPS’] értékét. tovább vagy nem. Ezután e három változó értékeit a „//:” karakterrel kombinálva kapja meg az aktuális oldal teljes URL -jét.
// Olvassa el az aktuális oldal domainnevét
$ domain = $ _SERVER['HTTP_HOST'];
// Olvassa el a kért erőforrást
$ erőforrás = $ _SERVER['REQUEST_URI'];
// Ismerje meg az aktuális URL protokollját
ha( elmúlt ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS'] === 'tovább')
$ protokoll = 'https';
más
$ protokoll = 'http';
// Kombinálja az összes részt, hogy megkapja a teljes URL -címet
$ url = $ protokoll.': //'.$ domain.$ erőforrás;
// Az aktuális oldal URL -címének kinyomtatása
kidobta '
Az aktuális URL -címe
az oldal:
'. $ url;?> Kimenet:
A következő kimenet jelenik meg a parancsfájl kiszolgálóról történő futtatása után. A $ _SERVER [„HTTPS”] értéke nem tovább a helyi szerver számára. Tehát a kimenet azt mutatja http protokoll az aktuális URL -hez.
2. példa: Jelenítse meg az aktuális oldal URL -jét a terner operátor használatával
A következő példa bemutatja az aktuális oldal teljes URL -jének módját a terner operátor használatával. Hozzon létre egy PHP fájlt a következő szkripttel.
Ha a feltételt az előző példában használták annak kiderítésére, hogy melyik protokollt használják az aktuális oldal URL -jében. Ugyanezt a feladatot a szkript terner operátorával végezzük. elmúlt) függvény annak ellenőrzésére szolgál, hogy a $ _SERVER [’HTTPS’] készlet -e vagy sem, és hogy a $ _SERVER [’HTTPS’] értéke tovább, akkor a terner operátor visszaadja a HTTPS protokollt, különben a HTTP -t. Az URL többi részét az előző példához hasonlóan lekérjük és kinyomtatjuk.
// Ismerje meg az aktuális URL protokollját
$ protokoll = ( elmúlt ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
== 'tovább'?'https' : 'http');
// Olvassa el az aktuális oldal domainnevét
$ domain = $ _SERVER['HTTP_HOST'];
// Olvassa el a kért erőforrást
$ erőforrás = $ _SERVER['REQUEST_URI'];
// Kombinálja az összes részt, hogy megkapja a teljes URL -címet
$ url = $ protokoll.': //'.$ domain.$ erőforrás;
// Az aktuális oldal URL -címének kinyomtatása
kidobta '
Az aktuális oldal URL -címe:
'. $ url;?>
Kimenet:
A következő kimenet jelenik meg a parancsfájl kiszolgálóról történő futtatása után. A $ _SERVER [„HTTPS”] értéke nem tovább a helyi szerver számára. Tehát a kimenet az aktuális URL HTTP protokollját mutatja.
3. példa: Jelenítse meg az aktuális oldal URL -jét a portszám alapján
Az előző két példában a $ _SERVER [’HTTPS’] értékét használjuk az oldal aktuális URL -jének protokolljának megállapítására, és nem használunk lekérdezési karakterláncot az URL -lel. A következő példa bemutatja, hogy a $ _SERVER [’SERVER_PORT’] változó hogyan használható a protokoll megismerésére és a teljes URL -cím lekérdezésére a lekérdezési karakterlánccal. Hozzon létre egy PHP fájlt a következő szkripttel.
Itt több logikai feltételt és háromszoros operátort használnak a protokoll megismerésére. Ha a $ _SERVER [’HTTPS’] értéke üres vagy értéke ki, akkor ellenőrzi a $ _SERVER [’SERVER_PORT’] értékét, hogy megtudja az aktuális URL protokollját. A $ _SERVER [’QUERY_STRING’] változó a lekérdezési karakterlánc értékének lekérésére szolgál az URL -ből.
// Ismerje meg az aktuális URL protokollját
$ protokoll = ((! üres ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
! = 'ki') || $ _SERVER['SZERVER PORT'] == 443)?'https: //' : 'http: //';
// Olvassa el az aktuális oldal domainnevét
$ domain = $ _SERVER['HTTP_HOST'];
// Olvassa el a kért erőforrást
$ erőforrás = $ _SERVER['REQUEST_URI'];
// Olvassa el a lekérdezési karakterlánc értékét
$ lekérdezés = $ _SERVER['QUERY_STRING'];
// Kombinálja az összes részt, hogy megkapja a teljes URL -címet
$ url = $ protokoll.$ domain.$ erőforrás;
// Az aktuális oldal URL -címének kinyomtatása
kidobta '
Az aktuális oldal teljes URL -címe:
'. $ url;// A lekérdezési karakterlánc rész kinyomtatása
kidobta '
A lekérdezési karakterlánc a következő:
'. $ lekérdezés;?>
Kimenet:
A következő kimenet jelenik meg, miután a fenti parancsfájlt végrehajtotta a kiszolgálóról lekérdezési karakterlánc nélkül. Az URL -ben nincs lekérdezési karakterlánc. Tehát a kimenet az üres lekérdezési karakterláncot mutatja.
A következő kimenet jelenik meg, miután a fenti parancsfájlt végrehajtotta a kiszolgálóról a lekérdezési karakterlánccal. A következő kimenet külön mutatja az URL -címet a lekérdezési karakterlánccal és a lekérdezési karakterlánccal együtt.
Következtetés
Ebben az oktatóanyagban az aktuális oldal teljes URL -jének lekérésének különböző módjait mutatjuk be különböző példákkal. Ebben az oktatóanyagban az URL és a lekérdezési karakterlánc elválasztásának módja is látható. Remélhetőleg ez az oktatóanyag segíti az olvasókat abban, hogy tudják, hogyan olvassák el az aktuális oldal teljes URL -jét a PHP szkript használatával.