我需要的URL的最後一個字符串的內容/和/PHP獲取端線對之間的URL /和/
例如:
http://mydomain.com/get_this/
or
http://mydomain.com/lists/get_this/
我需要在那裏get_this是網址。
我需要的URL的最後一個字符串的內容/和/PHP獲取端線對之間的URL /和/
例如:
http://mydomain.com/get_this/
or
http://mydomain.com/lists/get_this/
我需要在那裏get_this是網址。
trim()刪除結尾的斜線,strrpos()找到的最後一次出現(修剪完畢後)和substr()獲取最後一次出現/
後的所有內容。
$url = trim($url, '/');
echo substr($url, strrpos($url, '/')+1);
更妙的是,你可以只使用basename(),像hakre建議:
echo basename($url);
假設有總是是結尾的斜線:
$parts = explode('/', $url);
$get_this = $parts[count($parts)-2]; // -2 since there will be an empty array element due to the trailing slash
如果不是:
$url = trim($url, '/'); // If there is a trailing slash in this URL instance get rid of it so we're always sure the last part is where we expect it
$parts = explode('/', $url);
$get_this = $parts[count($parts)-1];
有人接受了downvoting spree –
這些用戶應該被終身禁用.. –
看起來他們是 –
你可以試試這個:
preg_match("/http:\/\/([a-z0-9\.]+)\/(.+)\/(.*)\/?/", $url, $matches);
print_r($matches);
像這樣的東西應該工作。
<?php
$subject = "http://mydomain.com/lists/get_this/";
$pattern = '/\/([^\/]*)\/$/';
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3);
print_r($matches);
?>
只需使用parse_url()
和explode()
:
<?php
$url = "http://mydomain.com/lists/get_this/";
$path = parse_url($url, PHP_URL_PATH);
$path_array = array_filter(explode('/', $path));
$last_path = $path_array[count($path_array) - 1];
echo $last_path;
?>
[PHP獲取URL返回空白的最後一個字(的
可能重複http://stackoverflow.com/questions/11090034/php-get-last -word-of-url-returning-blank) - 你爲什麼複製這些問題? – hakre