当前位置: 首页 > 面试题库 >

PHP,获取不带文件扩展名的文件名

朱丰
2023-03-14
问题内容

我有这个PHP代码:

function ShowFileExtension($filepath)
{
    preg_match('/[^?]*/', $filepath, $matches);
    $string = $matches[0];

    $pattern = preg_split('/\./', $string, -1, PREG_SPLIT_OFFSET_CAPTURE);

    if(count($pattern) > 1)
    {
        $filenamepart = $pattern[count($pattern)-1][0];
        preg_match('/[^?]*/', $filenamepart, $matches);
        return strtolower($matches[0]);
    }
}

如果我有一个名为的文件my.zip,则此函数返回.zip

我想做相反的事情,我希望函数my不带扩展名就返回。

该文件只是变量中的字符串。


问题答案:

不需要所有这些。pathinfo()
,它为您提供了路径的所有组件。

手册中的示例:

$path_parts = pathinfo('/www/htdocs/index.html');

echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n"; // filename is only since PHP 5.2.0

代码输出:

/www/htdocs
index.html
html
index

或者,您只能获得某些部分,例如:

echo pathinfo('/www/htdocs/index.html', PATHINFO_EXTENSION); // outputs html


 类似资料:
  • cmf_get_file_extension($filename) 功能 获取文件扩展名 参数 $filename: string 文件名 返回 string 文件扩展名

  • X2.2.0新增 sp_get_file_extension($filename) 功能: 获取文件扩展名 参数: $filename: 文件名 返回: 类型string,文件扩展名 使用: $suffix = sp_get_file_extension('23232.png');

  • 本文向大家介绍php如何获取文件的扩展名,包括了php如何获取文件的扩展名的使用技巧和注意事项,需要的朋友参考一下 网上也有很多类似的方法,不过都存在这样那样的不严谨的问题,本文就不一一分析了,这里只给出最正确的利用php 获取文件扩展名(文件后缀名)的方法。 函数中用到了php内置函数pathinfo 这个函数,下面分析一下这个函数的意思和用法: 定义和用法 pathinfo() 函数以数组的形

  • 问题内容: 我用Express 3在node.js中创建文件上传功能。 我想获取图像的文件扩展名。所以我可以重命名文件,然后将文件扩展名附加到它。 如何在node.js中获取图像的扩展名? 问题答案: 我相信您可以执行以下操作来获取文件名的扩展名。

  • cmf_get_file_extension($filename) 功能 获取文件扩展名 参数 $filename: string 文件名 返回 string 文件扩展名

  • 问题内容: 为了清楚起见,我不是在寻找MIME类型。 假设我有以下输入: 我想要一种分解此输入的方法,特别是扩展。有没有内置的方式可以做到这一点?我想避免编写自己的解析器。 问题答案: 在这种情况下,使用FilenameUtils.getExtension从Apache的百科全书IO 这是如何使用它的示例(你可以指定完整路径或仅指定文件名): Maven依赖项: Gradle Groovy DSL