PHP获取文件扩展名的4种方法
封面图
•
2025-11-07
•
PHP
253
0
0
0
在 PHP 中,获取文件扩展名是一个常见的需求。以下是 **4 种常用的方法**来获取文件的扩展名: --- ### ✅ 方法一:使用 `pathinfo()` 函数 ```php $filename = "example.jpg"; $extension = pathinfo($filename, PATHINFO_EXTENSION); echo $extension; // 输出: jpg ``` **说明**: - `pathinfo()` 是最推荐的方式。 - 可以通过 `PATHINFO_EXTENSION` 获取扩展名。 --- ### ✅ 方法二:使用 `explode()` 和 `strrpos()` ```php $filename = "example.jpg"; $pos = strrpos($filename, '.'); $extension = ($pos === false) ? '' : substr($filename, $pos + 1); echo $extension; // 输出: jpg ``` **说明**: - 找到最后一个点的位置,然后截取后面的部分。 - 如果没有找到点(如文件无扩展名),返回空字符串。 --- ### ✅ 方法三:使用 `substr()` 和 `strrpos()` ```php $filename = "example.jpg"; $extension = substr($filename, strrpos($filename, '.') + 1); echo $extension; // 输出: jpg ``` **说明**: - 与方法二类似,但更简洁。 - 注意:如果文件名中没有 `.`,会返回整个字符串。 --- ### ✅ 方法四:使用 `preg_match()` 正则表达式 ```php $filename = "example.jpg"; preg_match('/\.(.+)$/', $filename, $matches); $extension = $matches[1] ?? ''; echo $extension; // 输出: jpg ``` **说明**: - 使用正则匹配最后一个点之后的内容。 - 使用 `??` 来避免未定义索引错误。 --- ### ✅ 总结对比 | 方法 | 简洁性 | 安全性 | 推荐程度 | |------|--------|--------|----------| | `pathinfo()` | 高 | 高 | ⭐⭐⭐⭐⭐ | | `explode()` + `strrpos()` | 中 | 中 | ⭐⭐⭐ | | `substr()` + `strrpos()` | 高 | 中 | ⭐⭐⭐ | | `preg_match()` | 低 | 中 | ⭐⭐ | --- 如果你希望代码更加健壮、安全和易读,**推荐使用 `pathinfo()` 方法**。
上一篇:
PHP 异常处理
下一篇:
php 文件引用
标题录入,一次不能超过6条
留言
评论