以不少于三种方式,获取文件扩展名
// $file = __FILE__;
$file = "x.y.z.php";
function getExt1($file) {
return pathinfo($file)['extension'];
}
echo getExt1($file), "<hr>";
function getExt2($file) {
return pathinfo($file, PATHINFO_EXTENSION);
}
echo getExt2($file), "<hr>";
function getExt3($file) {
// $file = "x.y.z.php";
// strstr 的对应函数 strrchr
// return strstr($file, "."); // .y.z.php
// strrchr
// r = reverse 相反的,颠倒的
// return strrchr($file, "."); // .php
// 方式一:
// return substr(strrchr($file, "."), "1");
// 方式二:
// trim($str); 默认清除空格,第二个扩展参数,指定清除对象
// ltrim l = left 在左边清除
// rtrim r = right 在右边清除
// return trim(strrchr($file, "."), ".");
return ltrim(strrchr($file, "."), ".");
}
echo getExt3($file), "<hr>";
function getExt4($file) {
// $file = "x.y.z.php";
// strpos 从左往右查找指定字符的第一个位置(下标)
// return strpos($file, ".");
// strrpos() 从右往左查找指定字符的第一个位置(下标)
// return strrpos($file, ".");
return substr($file, strrpos($file, ".")+1);
}
echo getExt4($file), "<hr>";
function getExt5($file) {
// $file = "x.y.z.php";
$arr = explode(".", $file);
// count()的同名函数sizeof() 语法糖
// return $arr[count($arr)-1];
return $arr[sizeof($arr)-1];
}
echo getExt5($file), "<hr>";
function getExt6($file) {
$arr = explode(".", $file);
return end($arr);
}
echo getExt6($file), "<hr>";