如何使用PHP获取当前URL的前3部分。
例如:
我的网址:http://something.com/somebody/somegirls/whatever/
得到零件后的结果:http://something.com/somebody/somegirls/
这是我的PHP代码,它获取当前的URL:
<?php function curPageURL() {
$url = isset( $_SERVER['HTTPS'] ) && 'on' === $_SERVER['HTTPS'] ? 'https' : 'http';
$url .= '://' . $_SERVER['SERVER_NAME'];
$url .= in_array( $_SERVER['SERVER_PORT'], array('80', '443') ) ? '' : ':' . $_SERVER['SERVER_PORT'];
$url .= $_SERVER['REQUEST_URI'];
return $url;
}
$current_url = str_replace("www.", "", curPageURL());
?>发布于 2014-04-25 05:33:18
尝尝这个,
<?php
$url = 'http://something.com/somebody/somegirls/whatever/';
$parts = explode('/', $url);
$new_url = $parts[0].'/'.$parts[1].'/'.$parts[2].'/'.$parts[3].'/'.$parts[4].'/';
echo $new_url;
?>输出
http://something.com/somebody/somegirls/发布于 2014-04-25 05:35:00
您还可以使用url获取数组中的url,如下所示:
$current_url_array = parse_url($current_url);
var_dump($current_url_array);发布于 2014-04-25 05:38:44
您可以使用regexp:
<?php
function getFirstUrlContents($Url) {
preg_match_all('/^([^\/]*\/){5}/', $Url, $MatchesArray);
return $MatchesArray[0];
}
var_dump(getFirstUrlContents('http://something.com/somebody/somegirls/whatever/'));
?>https://stackoverflow.com/questions/23284713
复制相似问题