Я хочу получить URL-адрес и его параметры. Пример:
www.someweb.com/somepage.php?id=10
Как получить только somepage.php?id=10
?
Я уже пробовал REQUEST_URI
и PHP_SELF
но это только дает мне www.someweb.com/somepage.php
или somepage.php
. Я хочу только имя страницы и ее параметры.
Наконец нашел этот метод:
basename($_SERVER['REQUEST_URI']);
Это вернет все URL-адреса с именем страницы. (например: index.php?id=1&name=rr&class=10
).
для полного URL-адреса с протоколом, именем сервера и параметрами:
$base_url = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on' ? 'https' : 'http' ) . '://' . $_SERVER['HTTP_HOST']; $url = $base_url . $_SERVER["REQUEST_URI"];
$_SERVER['PHP_SELF']
для имени страницы и $_GET['id']
для определенного параметра.
попробуйте print_r($_GET);
чтобы распечатать все параметры.
для вашего запроса echo $_SERVER['PHP_SELF']."?id=".$_GET['id'];
вернуть все параметры echo $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];
Вот, вероятно, что вы ищете: php-get-url-query-string . Вы можете комбинировать его с другими предложенными параметрами $_SERVER
.
function curPageName() { return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1); } echo "The current page is ".curPageName()."?".$_SERVER['QUERY_STRING'];
Это даст вам имя страницы, оно получит строку после последней косой черты