php获取文件扩展名
推荐get_ext1和get_ext2,在各种文件名中均能测试通过,其他的特殊文件名会有bug.
$paths = array(
'/home/dotcoo/avatar.img.jpg',
'/home/www.dir/avatar.jpg',
'/home/www.dir/avatar',
'/home/wwwdir/avatar',
'/home/wwwdir/avatar.',
);
foreach ($paths as $path) {
for ($i=1; $i<=5; $i++) {
$func = "get_ext$i";
echo "$i: ", $func($path), '<br>';
}
echo '<br>';
}
function get_ext1($path) {
return pathinfo($path, PATHINFO_EXTENSION);
}
function get_ext2($path) {
return ltrim(strrchr(basename($path), '.'), '.');
}
function get_ext3($path) {
$exts = explode('.', basename($path));
return array_pop($exts);
}
function get_ext4($path) {
$path = basename($path);
echo substr($path, strrpos($path, '.')+1);
}
function get_ext5($path) {
$path = basename($path);
return substr($path, -strpos(strrev($path), '.'));
}