Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在斜线后提取字符串?_Php_String_Url_Var - Fatal编程技术网

Php 如何在斜线后提取字符串?

Php 如何在斜线后提取字符串?,php,string,url,var,Php,String,Url,Var,比如: "http://www.blog-name.com/search/taio 克鲁兹“ ---------------------------------------------^“很抱歉,找不到具有 taio cruz标签“ 问题是: 如果用户输入http://www.blog-name.com/search/taio cruz,浏览器将查找名为“taio cruz”的文件夹,不是吗 如何获取值“Taio Cruz”?如果键入Cruz,浏览器将查找名为“Taio Cruz”的文件夹,不是

比如:

"http://www.blog-name.com/search/taio 克鲁兹“
---------------------------------------------^
“很抱歉,找不到具有 taio cruz标签“ 问题是:

如果用户输入
http://www.blog-name.com/search/taio cruz
,浏览器将查找名为“taio cruz”的文件夹,不是吗


如何获取值“Taio Cruz”?

如果键入Cruz,浏览器将查找名为“Taio Cruz”的文件夹,不是吗?如果要为当前页面执行此操作,可以将
$url
替换为
$\u SERVER['REQUEST\u URI']
。我只是展示了一种通用的方法。@Bernaz您必须将这种方法与modrewrite结合起来,通过一个可能与请求的URL不匹配的PHP文件来路由请求。这有一个明显的缺点,就是必须找到所有斜杠,并为一个简单的问题创建一个中间数组。@Emil这是一个干净的解决方案。性能并不会受到太大的影响,而且一开始也没那么重要。不,这不是一个干净的解决方案。我同意性能损失可能是微乎其微的,但根据我的定义,创建中间数组(包括在内存中分配空间、构建哈希桶等)并不干净。@Emil这是一个干净的解决方案,因为它可读性强,易于理解。使用
strrpos
(虽然方便而且可能更高效)很难理解,因为函数的名称很糟糕。你太过担心内部结构了,关键是要利用抽象对你有利。每个人都知道strpos和friends做什么(或者,至少,如果他们以编写PHP代码为生的话,应该这样做)。按照您的逻辑,您的代码也可以在一次大爆炸中结束世界。我认为这很懒惰,尤其是因为写它们的复杂性几乎是一样的。请看下面的例子: "http://www.blog-name.com/search/taio cruz"
---------------------------------------------^
"Sorry, no posts were found with the tag taio cruz"
$url = 'http://www.blog-name.com/search/taio cruz';
$last = substr($url, strrpos($url, '/') + 1);
//$last is now "taio cruz"
$url = 'http://www.blog-name.com/search/taio cruz';
$val = end(explode('/', $url));
// $val is now 'taio cruz'
echo basename("http://www.blog-name.com/search/taio cruz"); //taio cruz