Необходими променливи
Следните суперглобални променливи са необходими, за да разберете URL адреса на текущата страница.
Суперглобални променливи | Цели |
---|---|
$ _SERVER [„HTTPS“] | Връща се На ако HTTPS протокол се използва в URL адреса на текущата страница. |
$ _SERVER [„HTTP_HOST“] | Той връща името на сървъра на текущата страница. |
$ _SERVER [„REQUEST_URI“] | Той връща исканото име на ресурс. |
$ _SERVER [„SERVER_PORT“] | Той връща номера на порта на сървъра. |
$ _SERVER [‘QUERY_STRING’] | Той връща стойността на низа на заявката, ако съществува в URL адреса на текущата страница. |
Пример 1: Показване на URL адреса на текущата страница с помощта на условен израз
Следващият пример показва как условният израз може да се използва за получаване на протокола, използван в URL адреса на текущата страница. Създайте PHP файл със следния скрипт.
Стойността на $ _SERVER [‘HTTP_HOST’] се използва за получаване на името на домейна на текущия URL адрес. Стойността на $ _SERVER [‘REQUEST_URI’] се използва за получаване на името на искания ресурс. си отиде) функцията се използва за проверка дали $ _SERVER ['HTTPS'] е набор или не, и ако е зададен, проверете стойността на $ _SERVER ['HTTPS'] дали е На или не. След това стойностите на тези три променливи се комбинират с „//:“ за извличане на пълния URL адрес на текущата страница.
// Прочетете името на домейна на текущата страница
$ домейн = $ _СЕРВЕР[„HTTP_HOST“];
// Прочетете искания ресурс
$ ресурс = $ _СЕРВЕР[„REQUEST_URI“];
// Разберете протокола на текущия URL адрес
ако( си отиде ($ _СЕРВЕР[„HTTPS“]) && $ _СЕРВЕР[„HTTPS“] === 'На')
$ протокол = 'https';
иначе
$ протокол = 'http';
// Комбинирайте всички части, за да получите пълния URL адрес
$ url = $ протокол.': //'.$ домейн.$ ресурс;
// Отпечатайте URL адреса на текущата страница
изхвърлен '
URL адресът на текущия
страницата е:
'. $ url;?> Изход:
Следният изход ще се появи след стартиране на скрипта от сървъра. Стойността на $ _SERVER [‘HTTPS’] не е На за локалния сървър. Така че изходът показва http протокол за текущия URL адрес.
Пример 2: Показване на URL адреса на текущата страница с помощта на троичен оператор
Следващият пример показва начина за получаване на пълния URL адрес на текущата страница с помощта на троичния оператор. Създайте PHP файл със следния скрипт.
Ако условието се използва в предишния пример, за да разберете кой протокол се използва в URL адреса на текущата страница. Същата задача се прави с помощта на тройния оператор в този скрипт. си отиде) функцията се използва за проверка дали $ _SERVER ['HTTPS'] е набор или не и дали стойността на $ _SERVER ['HTTPS'] е На, тогава тернарният оператор ще върне HTTPS, в противен случай ще върне HTTP. Другите части на URL адреса се извличат и отпечатват, както в предишния пример.
// Разберете протокола на текущия URL адрес
$ протокол = ( си отиде ($ _СЕРВЕР[„HTTPS“]) && $ _СЕРВЕР[„HTTPS“]
== 'На'?'https' : 'http');
// Прочетете името на домейна на текущата страница
$ домейн = $ _СЕРВЕР[„HTTP_HOST“];
// Прочетете искания ресурс
$ ресурс = $ _СЕРВЕР[„REQUEST_URI“];
// Комбинирайте всички части, за да получите пълния URL адрес
$ url = $ протокол.': //'.$ домейн.$ ресурс;
// Отпечатайте URL адреса на текущата страница
изхвърлен '
URL адресът на текущата страница е:
'. $ url;?>
Изход:
Следният изход ще се появи след стартиране на скрипта от сървъра. Стойността на $ _SERVER [‘HTTPS’] не е На за локалния сървър. Така че изходът показва HTTP протокола за текущия URL адрес.
Пример 3: Показване на URL адреса на текущата страница въз основа на номера на порта
В предишните два примера стойността на $ _SERVER [‘HTTPS’] се използва за откриване на протокола на текущия URL адрес на страницата и с URL адреса не се използва низ за заявка. Следващият пример показва как променливата $ _SERVER [‘SERVER_PORT’] може да се използва за откриване на протокола и извличане на пълния URL адрес с низа на заявката. Създайте PHP файл със следния скрипт.
Тук се използват множество логически условия и троичен оператор за откриване на протокола. Ако стойността на $ _SERVER [‘HTTPS’] е празна или е зададена на изключен, след това ще провери стойността на $ _SERVER [‘SERVER_PORT’], за да разбере протокола на текущия URL адрес. Променливата $ _SERVER [‘QUERY_STRING’] се използва за извличане на стойността на низа на заявката от URL адреса.
// Разберете протокола на текущия URL адрес
$ протокол = ((! празна ($ _СЕРВЕР[„HTTPS“]) && $ _СЕРВЕР[„HTTPS“]
! = 'изключен') || $ _СЕРВЕР[„SERVER_PORT“] == 443)?'https: //' : 'http: //';
// Прочетете името на домейна на текущата страница
$ домейн = $ _СЕРВЕР[„HTTP_HOST“];
// Прочетете искания ресурс
$ ресурс = $ _СЕРВЕР[„REQUEST_URI“];
// Прочетете стойността на низа на заявката
$ query = $ _СЕРВЕР[„QUERY_STRING“];
// Комбинирайте всички части, за да получите пълния URL адрес
$ url = $ протокол.$ домейн.$ ресурс;
// Отпечатайте URL адреса на текущата страница
изхвърлен '
Пълният URL адрес на текущата страница е:
'. $ url;// Отпечатайте частта от низа на заявката
изхвърлен '
Низът на заявката е:
'. $ query;?>
Изход:
Следният изход ще се появи след изпълнение на горния скрипт от сървъра без низ за заявка. В URL адреса не е посочен низ за заявка. Така изходът показва празния низ за заявка.
Следният изход ще се появи след изпълнение на горния скрипт от сървъра с низа на заявката. Следният изход показва URL адреса с низа на заявката и низа на заявката отделно.
Заключение
В този урок са показани различни начини за извличане на пълния URL адрес на текущата страница чрез използване на различни примери. Начинът за разделяне на URL адреса и низа на заявката също е показан в този урок. Надяваме се, че този урок ще помогне на читателите да знаят начина на четене на пълния URL адрес на текущата страница, използвайки PHP скрипта.