PHP Get URL - как получить полный URL текущей страницы

В этой статье, посвященной PHP, мы рассмотрим, как получить URL-адрес текущей страницы на языке программирования PHP.

Вы можете захотеть получить URL-адрес текущей страницы по следующим причинам:

  • Создание внутренних ссылок
  • Использование фильтров с запросами GET, например currentURL.com?myFilterParameter=Food

PHP фактически хранит много полезной информации, когда пользователи перемещаются по вашему веб-приложению. Один из них, конечно же, текущий URL.

PHP хранит эту полезную информацию в своем массиве суперглобальных переменных.

Что такое суперглобальные?

Суперглобальные переменные - это уже определенные движком PHP переменные, которые могут использоваться в любой области видимости. Они доступны в любое время.

Таких суперглобалов много, но нас интересует суперглобальный $ _SERVER.

$ _SERVER Superglobal

Суперглобальная переменная $ _SERVER имеет множество свойств, доступных с помощью индекса ассоциативного стиля.  

Вот некоторые из доступных нам значений:

  • HTTP_USER_AGENT
  • HTTP_HOST
  • HTTP_ACCEPT_ENCODING
  • HTTP_ACCEPT

Вы можете увидеть больше этих признаков в документации PHP здесь.

Итак, как нам получить полный URL?

Имея в виду вышеупомянутые пункты о суперглобалах и суперглобале $ _SERVER , мы можем продолжить и получить URL-адрес текущей страницы.

На следующем снимке экрана я визуализировал приложение PHP в локальной среде на странице с именем «home».

URL-адрес: // localhost / home .

В кодовой базе этой страницы я собираюсь использовать переменную $ _SERVER .

С этой переменной нам нужно будет использовать 2 отдельных индекса для получения каждой части URL-адреса текущей страницы. Первая часть будет host, localhost, а вторая часть будет именем страницы, home.

Первый индекс, который мы будем использовать, это HTTP_HOST - текущий хост веб-адреса, например localhost или example.com.

Второй - REQUEST_URI, который даст нам часть URL-адреса после хоста, так что это что-то после localhost или example.com.

Давайте посмотрим на это в действии:

$currentPageUrl = '//' . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]; echo "Current page URL " . $currentPageUrl; 

Выход

И это все - довольно просто!

Резюме

В $ _SERVER суперглобальных переменный хранит много важной информации для современных однодневный потребительных случаев. Как мы обнаружили в этом случае, получение URL-адреса текущей страницы упрощается благодаря возможности доступа к этой конкретной переменной.

Тем не менее, стоит проверить документацию, чтобы узнать, какие еще индексы доступны, так как хорошо иметь в виду, насколько полезной может быть эта переменная.

Надеюсь, вам понравилась эта статья! Если да, не стесняйтесь проверить мой блог, //www.codewall.co.uk/