如何在PHP中删除url的最后一部分

时间:2014-09-15 14:13:28

标签: php

 $url = explode('/', $articleimage);
 $articleurl = array_pop($url);

我已经使用上面的方法来获取URL的最后一部分。它正在工作。但我想从URL中删除最后一部分并显示剩下的部分。请帮助我。我在这里提到示例URL。

http://www.brightknowledge.org/knowledge-bank/media/studying-media/student-media/image_rhcol_thin     

11 个答案:

答案 0 :(得分:12)

试试这个:

$url = explode('/', 'http://www.brightknowledge.org/knowledge-bank/media/studying-media/student-media/image_rhcol_thin');
array_pop($url);
echo implode('/', $url); 

答案 1 :(得分:2)

无需使用explodeimplodearray_pop

只需使用dirname($path)。它的代码更加有效和简洁。

答案 2 :(得分:1)

之后你可以array_pop

$url2=implode("/",$url)

获取字符串中的url

答案 3 :(得分:1)

使用PHP中的以下字符串操作

$url_without_last_part = substr($articleimage, 0, strrpos($articleimage, "/"));

答案 4 :(得分:0)

改变这个:

$articleurl = array_pop($url);

进入这个:

$articleurl = end($url);

$ articleurl将保存最后一个数组键。

错过了要删除值的部分,可以使用功能键()获取密钥,然后使用该键删除值

$array_key = key($articleurl);
unset(url[$array_key])

答案 5 :(得分:0)

非常简单的解决方案添加到代码的末尾

$url = implode('/', $url);
echo $url;

请注意,array_pop使用引用参数传递,因此数组将被修改implode()函数与爆炸函数相反,并通过第一个参数(glue)连接数组元素并返回字符串。

答案 6 :(得分:0)

看起来这可能就是你要找的东西。您可以使用旨在处理此类URL操作的解析函数,而不是爆炸和内爆。

$url = parse_url( $url_string );

$result = 
    $url['scheme']
    . "://"
    . $url['host']
    . pathinfo($url['path'], PATHINFO_DIRNAME );

答案 7 :(得分:0)

这是简单的实现方法

str_replace(basename($articleimage), '', $articleimage);

答案 8 :(得分:0)

单线:

$url = implode('/', array_splice( explode('/', $articleimage), 0, -1 ) );

答案 9 :(得分:0)

对于Laravel

dirname(url()->current())

在url()-> current()->中,您将获得当前URL。

在目录名->您将获得父目录。

在Core PHP中:

dirname($currentURL)

答案 10 :(得分:-1)

$url['']并输入相应的数字