PHP – найти URL-адрес сценария, который включает текущий документ
Вопрос
У меня есть созданный мною шаблон, который устанавливает переменные, которые редко меняются, вызывает мои заголовки, вызывает мой баннер и боковую панель, загружает переменную, которая показывает отдельные страницы, а затем вызывает нижний колонтитул.В одном из моих заголовков мне нужен URL-адрес страницы в адресной строке пользователя.Есть ли способ сделать это?
В настоящее время:
<?php
$title = "MySite - Contacts";
include("header.php");
.
.
.
?>
Решение
Основные переменные, которые вас заинтересуют:
$_SERVER['REQUEST_URI']
Содержит пройденный путь, например. /foo/bar
$_SERVER['PHP_SELF']
это путь к основному файлу PHP (НЕТ файл, в котором вы находитесь, может быть включенным, но фактическим базовым файлом)
В $_SERVER есть масса других полезных переменных, которые стоит запомнить, поэтому просто:
print_r($_SERVER);
или просто посетите врача по адресу http://php.net/manual/en/reserved.variables.server.php
Другие советы
Веб-адрес вызываемой страницы можно получить с помощью следующей функции::
function curPageURL() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}
Я использовал это во многих местах, нашел в Google.
Это звучит как $_SERVER['REQUEST_URI']
это то, что вам нужно.