我在教程中找到了以下函数来获取文件的扩展名,但我认为它有点太长了。所以我认为有一种方法可以缩短它。
function getExtension($str) {
$i = strrpos($str,".");
if (!$i) return "";
$l = strlen($str) - $i;
$ext = substr($str, $i+1, $l);
return $ext;
}
$str
是文件名。
有没有办法缩短这个功能,而不影响稳定性和输出?
我做过这样的事情:
function getExtension($str) {
$ext = pathinfo($str)['extension'];
return $ext;
}
但那对我不起作用,但可能我做错了。
答案 0 :(得分:6)
正确的方法是使用pathinfo()
功能。
$extension = pathinfo($filename, PATHINFO_EXTENSION);
答案 1 :(得分:2)
已移至:https://stackoverflow.com/a/12932338/367456 - 此答案将被删除。
答案 2 :(得分:0)
可能有以下几点:
function getExtension($filename)
{
$parts = explode('.', $filename);
if (sizeof($parts) > 1) {
return array_pop($parts);
}
return '';
}