我想得到一个URL和它的参数。例如:
www.someweb.com/somepage.php?id=10
如何只得到somepage.php?id=10?我已经试过REQUEST_URI和PHP_SELF,但是它只给我www.someweb.com/somepage.php或somepage.php。我想要的只是页面名称和它的参数。
somepage.php?id=10
REQUEST_URI
PHP_SELF
www.someweb.com/somepage.php
somepage.php
ecbunoof1#
basename($_SERVER['REQUEST_URI']);
这将返回带有页面名称的所有URL。(例如:index.php?id=1&name=rr&class=10)。
index.php?id=1&name=rr&class=10
ruoxqz4g2#
有关包含协议、服务器名和参数的完整URL:
$base_url = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on' ? 'https' : 'http' ) . '://' . $_SERVER['HTTP_HOST']; $url = $base_url . $_SERVER["REQUEST_URI"];
xoshrz7s3#
$_SERVER['PHP_SELF']表示页面名称,$_GET['id']表示特定参数。尝试print_r($_GET);打印出所有参数。对于您的请求echo $_SERVER['PHP_SELF']."?id=".$_GET['id'];返回所有参数echo $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];
$_SERVER['PHP_SELF']
$_GET['id']
print_r($_GET);
echo $_SERVER['PHP_SELF']."?id=".$_GET['id'];
echo $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];
vsdwdz234#
function curPageName() { return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1); } echo "The current page is ".curPageName()."?".$_SERVER['QUERY_STRING'];
这将得到你的页面名称,它将得到最后一个斜杠后的字符串
q0qdq0h25#
这里可能是你正在寻找的:php-get-url-query-string。您可以将其与其他建议的$_SERVER参数组合使用。
$_SERVER
abithluo6#
下面是我用来获取完整URL的一个非常完整的函数:
function get_full_url( bool $include_query = true ) { $protocol = ( ! empty( $_SERVER['HTTPS'] ) && strtolower( $_SERVER['HTTPS'] ) !== 'off' ) || ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && strtolower( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) === 'https' ) || ( ! empty( $_SERVER['HTTP_FRONT_END_HTTPS'] ) && strtolower( $_SERVER['HTTP_FRONT_END_HTTPS'] ) !== 'off' ) || ( isset( $_SERVER['SERVER_PORT'] ) && intval( $_SERVER['SERVER_PORT'] ) === 443 ) ? 'https' : 'http'; $uri = $protocol . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; return $include_query ? $uri : str_replace( '?' . $_SERVER['QUERY_STRING'], '', $uri ); }
6条答案
按热度按时间ecbunoof1#
这将返回带有页面名称的所有URL。(例如:
index.php?id=1&name=rr&class=10
)。ruoxqz4g2#
有关包含协议、服务器名和参数的完整URL:
xoshrz7s3#
$_SERVER['PHP_SELF']
表示页面名称,$_GET['id']
表示特定参数。尝试
print_r($_GET);
打印出所有参数。对于您的请求
echo $_SERVER['PHP_SELF']."?id=".$_GET['id'];
返回所有参数
echo $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];
vsdwdz234#
这将得到你的页面名称,它将得到最后一个斜杠后的字符串
q0qdq0h25#
这里可能是你正在寻找的:php-get-url-query-string。您可以将其与其他建议的
$_SERVER
参数组合使用。abithluo6#
下面是我用来获取完整URL的一个非常完整的函数: