在php文件上传时我们需要获取文件名后缀之后进行简单文件类型判断了,而在php中文件名后缀获取方法很简单并且有很多种,下面我来总结一下。
1.basename()-返回路径的文件名
请看下面php代码:
代码如下 | 复制代码 |
$path = "/usr/www/html/index.php"; |
运行结果:
index.php
index
2.dirname()-返回当前脚本的文件路径!
php代码:
代码如下 | 复制代码 |
|
运行结果:
F:webzendexercise
3.pathinfo() 返回一个关联数组包含有 path 的信息。
包括以下的数组单元:路径名称dirname,文件名称basename 和 扩展名称extension。
请看下面简单代码演示:
代码如下 | 复制代码 |
$path = "/usr/www/html/index.php"; $pathinfo = pathinfo($path); echo "目录名称:$pathinfo[dirname] "; echo "文件名称:$pathinfo[basename] "; echo "扩展名:$pathinfo[extension]"; ?> |
运行结果:
目录名称:/usr/www/html
文件名称:index.php
扩展名:php
4.realpath -- 返回规范化的绝对路径名
php代码如下:
代码如下 | 复制代码 |
|
最后注意一个小技巧:不同路径的文件路径操作符可能,不同,windows下可以用"/"和"",
linux下只能用"/",所以开发的时候,建议都用"/",如我上面的文件路径写法!
//方法一:
代码如下 | 复制代码 |
function extend_1($file_name) { $retval=“”; $pt=strrpos($file_name, “.”); if ($pt) $retval=substr($file_name, $pt+1, strlen($file_name) - $pt); return ($retval); } |
//方法二
Php代码
代码如下 | 复制代码 |
function extend_2($file_name) { $extend = pathinfo($file_name); $extend = strtolower($extend["extension"]); return $extend; } |
//方法三
Php代码
代码如下 | 复制代码 |
function extend_3($file_name) { $extend =explode(“.” , $file_name); $va=count($extend)-1; return $extend[$va]; } |
//方法四
Php代码
代码如下 | 复制代码 |
function getFileExt($file_name) { while($dot = strpos($file_name, “.”)) { $file_name = substr($file_name, $dot+1); } return $file_name; } |
?>