Nepieciešamie mainīgie
Lai uzzinātu pašreizējās lapas URL adresi, ir nepieciešami šādi globālie mainīgie.
Superglobālie mainīgie | Mērķi |
---|---|
$ _SERVER [“HTTPS”] | Tas atgriežas uz ja pašreizējās lapas URL tiek izmantots HTTPS protokols. |
$ _SERVER [‘HTTP_HOST’] | Tas atgriež pašreizējās lapas servera nosaukumu. |
$ _SERVER [‘REQUEST_URI’] | Tas atgriež pieprasīto resursa nosaukumu. |
$ _SERVER [‘SERVER_PORT’] | Tas atgriež servera porta numuru. |
$ _SERVER [“QUERY_STRING”] | Tas atgriež vaicājuma virknes vērtību, ja tā pastāv pašreizējās lapas URL adresē. |
1. piemērs: parādiet pašreizējās lapas URL, izmantojot nosacījuma paziņojumu
Šis piemērs parāda, kā nosacījuma paziņojumu var izmantot, lai iegūtu protokolu, kas tiek izmantots pašreizējās lapas URL. Izveidojiet PHP failu ar šādu skriptu.
$ _SERVER [‘HTTP_HOST’] vērtība tiek izmantota, lai iegūtu pašreizējā URL domēna nosaukumu. $ _SERVER [‘REQUEST_URI’] vērtība tiek izmantota, lai iegūtu pieprasītā resursa nosaukumu. pagājis) funkcija tiek izmantota, lai pārbaudītu, vai $ _SERVER [‘HTTPS’] ir vai nav kopa, un, ja tā ir iestatīta, pārbaudiet $ _SERVER [“HTTPS”] vērtību, vai tā ir uz vai nē. Pēc tam šo trīs mainīgo vērtības tiek apvienotas ar “//:”, lai izgūtu pilnu pašreizējās lapas URL.
// Lasiet pašreizējās lapas domēna nosaukumu
$ domēns = $ _SERVER['HTTP_HOST'];
// Lasīt pieprasīto resursu
$ resurss = $ _SERVER[“REQUEST_URI”];
// Uzziniet pašreizējā URL protokolu
ja( aizgājis ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS'] === 'ieslēgts')
$ protokols = 'https';
citādi
$ protokols = 'http';
// Apvienojiet visas daļas, lai iegūtu pilnu URL adresi
$ url = $ protokols.': //'.$ domēns.$ resurss;
// Drukāt pašreizējās lapas URL adresi
izmest ārā '
Pašreizējā URL adrese
lapa ir:
'. $ url;?> Izeja:
Pēc skripta palaišanas no servera parādīsies šāda izvade. $ _SERVER [“HTTPS”] vērtība nav uz vietējam serverim. Tātad izvade parāda http protokols pašreizējam URL.
2. piemērs. Parādiet pašreizējās lapas URL, izmantojot trīskāršu operatoru
Šis piemērs parāda veidu, kā iegūt pilnu pašreizējās lapas URL, izmantojot trīskāršu operatoru. Izveidojiet PHP failu ar šādu skriptu.
Ja nosacījums ir izmantots iepriekšējā piemērā, lai noskaidrotu, kurš protokols tiek izmantots pašreizējās lapas URL. Tas pats uzdevums tiek veikts, izmantojot trīskāršo operatoru šajā skriptā. pagājis) funkcija tiek izmantota, lai pārbaudītu, vai $ _SERVER [‘HTTPS’] ir vai nav iestatīts, un vai $ _SERVER [“HTTPS”] vērtība ir uz, tad trīskāršais operators atdos HTTPS, pretējā gadījumā HTTP. Pārējās URL daļas tiek izgūtas un izdrukātas tāpat kā iepriekšējais piemērs.
// Uzziniet pašreizējā URL protokolu
$ protokols = ( aizgājis ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
== 'ieslēgts'?'https' : 'http');
// Lasiet pašreizējās lapas domēna nosaukumu
$ domēns = $ _SERVER['HTTP_HOST'];
// Lasīt pieprasīto resursu
$ resurss = $ _SERVER[“REQUEST_URI”];
// Apvienojiet visas daļas, lai iegūtu pilnu URL adresi
$ url = $ protokols.': //'.$ domēns.$ resurss;
// Drukāt pašreizējās lapas URL adresi
izmest ārā '
Pašreizējās lapas URL adrese ir šāda:
'. $ url;?>
Izeja:
Pēc skripta palaišanas no servera parādīsies šāda izvade. $ _SERVER [“HTTPS”] vērtība nav uz vietējam serverim. Tātad izvade parāda pašreizējā URL HTTP protokolu.
3. piemērs. Parādiet pašreizējās lapas URL, pamatojoties uz porta numuru
Iepriekšējos divos piemēros $ _SERVER [‘HTTPS’] vērtība tiek izmantota, lai noskaidrotu lapas pašreizējā URL protokolu, un kopā ar URL netiek izmantota vaicājuma virkne. Šis piemērs parāda, kā mainīgo $ _SERVER [‘SERVER_PORT’] var izmantot, lai uzzinātu protokolu un izgūtu pilnu URL adresi ar vaicājuma virkni. Izveidojiet PHP failu ar šādu skriptu.
Šeit, lai uzzinātu protokolu, tiek izmantoti vairāki loģiski nosacījumi un trīskāršs operators. Ja $ _SERVER [“HTTPS”] vērtība ir tukša vai iestatīta uz izslēgts, tad tā pārbaudīs $ _SERVER [‘SERVER_PORT’] vērtību, lai uzzinātu pašreizējā URL protokolu. $ _SERVER [‘QUERY_STRING’] mainīgais tiek izmantots, lai no URL izgūtu vaicājuma virknes vērtību.
// Uzziniet pašreizējā URL protokolu
$ protokols = ((! tukšs ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
! = 'izslēgts') || $ _SERVER['SERVER_PORT'] == 443)?'https: //' : 'http: //';
// Lasiet pašreizējās lapas domēna nosaukumu
$ domēns = $ _SERVER['HTTP_HOST'];
// Lasīt pieprasīto resursu
$ resurss = $ _SERVER[“REQUEST_URI”];
// Nolasiet vaicājuma virknes vērtību
$ vaicājums = $ _SERVER[“QUERY_STRING”];
// Apvienojiet visas daļas, lai iegūtu pilnu URL adresi
$ url = $ protokols.$ domēns.$ resurss;
// Drukāt pašreizējās lapas URL adresi
izmest ārā '
Pilna pašreizējās lapas URL adrese ir šāda:
'. $ url;// Izdrukājiet vaicājuma virknes daļu
izmest ārā '
Vaicājuma virkne ir šāda:
'. $ vaicājums;?>
Izeja:
Pēc iepriekš minētā skripta izpildīšanas no servera tiks parādīta šāda izvade bez vaicājuma virknes. Vietrādī URL nav norādīta vaicājuma virkne. Tātad izvade parāda tukšo vaicājuma virkni.
Pēc iepriekš minētā skripta izpildīšanas no servera ar vaicājuma virkni parādīsies šāda izvade. Nākamajā izvadā tiek parādīta URL adrese ar vaicājuma virkni un vaicājuma virkni atsevišķi.
Secinājums
Šajā apmācībā, izmantojot dažādus piemērus, ir parādīti dažādi veidi, kā izgūt pilnu pašreizējās lapas URL. Šajā apmācībā ir parādīts arī veids, kā atdalīt URL un vaicājuma virkni. Cerams, ka šī apmācība palīdzēs lasītājiem uzzināt veidu, kā nolasīt pilnu pašreizējās lapas URL, izmantojot PHP skriptu.