PHP 获取 url 字符串中不包含扩展的文件名

Php 2020-12-23 阅读 4 评论 0

使用 PHP 获取路径字符串的文件名,不包括文件扩展。下面介绍2种方法。

1. 使用正则表达式

先使用 basename ,截取带有文件扩展的文件名,再删除扩展。

function getNameWithoutExtFromStr($filePath)
{
    if (strpos($filePath, "/") !== false) {
        $filePath = basename($filePath);
    }
    return preg_replace("/\.[^.]+$/", "", $filePath);
}

2. 使用 pathinfo 方法

参考 pathinfo api ,方法的第 2 个参数使用 PATHINFO_FILENAME 选项即可。

function getNameWithoutExtFromStr($filePath)
{
    return pathinfo($filePath, PATHINFO_FILENAME);
}

使用:

echo getNameWithoutExtFromStr("test.zip");    // test
echo getNameWithoutExtFromStr("http://www.baidu.com/name.zip?key=val");    // name
最后更新 2020-12-24