PHP比爆炸更快的东西从URL获取文件名

时间:2010-05-16 18:38:16

标签: php url explode

我的网址可以是绝对的或相对的:

$rel = "date/album/001.jpg";
$abs = "http://www.site.com/date/album/image.jpg";

function getFilename($url) {
    $imgName = explode("/", $url);
    $imgName = $imgName[count($imgName) - 1];
    echo $imgName;
}

必须有更快的方法来做到这一点吗? 可能是reg表达式?但这对我来说是中国人..

5 个答案:

答案 0 :(得分:7)

basename返回文件名:

function getFilename($url) {
    return basename($url);
}

您甚至可以删除文件扩展名。

答案 1 :(得分:4)

substr( $url , strrpos( $url , "/" ) + 1 );

substr( strrchr( $url , "/" ) , 1 );

答案 2 :(得分:1)

我认为basename是最快的,但你也可以使用

$url = "http://www.mmrahman.co.uk/image/bg830293.jpg";
getFileName($url){
    $parts = pathinfo($url);
    return $parts['basename'];
}

pathinfo还允许您获取文件名,扩展名,目录号等。

答案 3 :(得分:0)

答案 4 :(得分:0)