我正在使用以下函数来获取我的服务器URL:
/* get url parameters */
function url() {
return sprintf(
"%s://%s%s", isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https' : 'http', $_SERVER['SERVER_NAME'], $_SERVER['REQUEST_URI']
);
}
以下是我的网址:
http://enunua.com/emarps/recover_password.php
从上面的url,我只想要以下参数作为我的url的一部分:
http://enunua.com/emarps/
不包括recover_password.php但是上面的函数给了我整个url,包括recover_password.php,请告知我如何才能只获得:http://enunua.com/emarps/?
您使用的是$_SERVER['REQUEST_URI'],它包含整个请求URL以及"recover_password.php"。您可以使用诸如"strrpos"之类的东西来获取不带文件名的URL。
尝试使用这个:
function url() {
return sprintf(
"%s://%s%s",
isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https' : 'http',
$_SERVER['SERVER_NAME'],
substr($_SERVER['REQUEST_URI'], 0, strrpos($_SERVER['REQUEST_URI'], '/') + 1)
);
}