PHP 去除未知文件扩展名

发布于 2024-11-12 22:37:37 字数 191 浏览 2 评论 0原文

据我所知,使用 PHP 的 basename() 函数,您可以像这样从路径中删除已知的文件扩展名,

basename('path/to/file.php','.php')

但是如果您不知道文件的扩展名或该扩展名的长度怎么办?我将如何实现这个目标?

提前致谢!

I understand that using PHP's basename() function you can strip a known file extension from a path like so,

basename('path/to/file.php','.php')

but what if you didn't know what extension the file had or the length of that extension? How would I accomplish this?

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

情绪失控 2024-11-19 22:37:37

pathinfo() 已经在这里提到了,但我我想补充一点,从 PHP 5.2 开始,它还有一种简单的方法来访问不带扩展名的文件名。

$filename = pathinfo('path/to/file.php', PATHINFO_FILENAME);

$filename 的值将为 file

pathinfo() was already mentioned here, but I'd like to add that from PHP 5.2 it also has a simple way to access the filename WITHOUT the extension.

$filename = pathinfo('path/to/file.php', PATHINFO_FILENAME);

The value of $filename will be file.

你的心境我的脸 2024-11-19 22:37:37

您可以使用 pathinfo 提取扩展名并将其删除。

// $filepath = '/path/to/some/file.txt';
$ext = pathinfo($filepath, PATHINFO_EXTENSION);
$basename = basename($filepath, ".$ext");

请注意 $ext 之前的 .

You can extract the extension using pathinfo and cut it off.

// $filepath = '/path/to/some/file.txt';
$ext = pathinfo($filepath, PATHINFO_EXTENSION);
$basename = basename($filepath, ".$ext");

Note the . before $ext

缪败 2024-11-19 22:37:37
$filename = preg_replace('@\.([^\.]+)$@', '', $filename);
$filename = preg_replace('@\.([^\.]+)$@', '', $filename);
执手闯天涯 2024-11-19 22:37:37

你可以尝试用这个:

$filepath = 'path/to/file.extension';
$extension = strtolower(substr(strrchr($filepath, '.'), 1));

You can try with this:

$filepath = 'path/to/file.extension';
$extension = strtolower(substr(strrchr($filepath, '.'), 1));
没︽人懂的悲伤 2024-11-19 22:37:37

试试这个:-

$path = 'path/to/file.php';

$pathParts = pathinfo( $path );

$pathWihoutExt = $pathParts['dirname'] . DIRECTORY_SEPARATOR . $pathParts['filename'];

Try this:-

$path = 'path/to/file.php';

$pathParts = pathinfo( $path );

$pathWihoutExt = $pathParts['dirname'] . DIRECTORY_SEPARATOR . $pathParts['filename'];
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文