比如:
代码如下 | 复制代码 |
echo substr(strrchr($file_name,'.'),1); |
或者
代码如下 | 复制代码 |
echo end(explode(".", $filename)); |
最正确的方法应该是使用 pathinfo 函数,如:
代码如下 | 复制代码 |
echo pathinfo($filename, PATHINFO_EXTENSION); |
pathinfo 函数支持4种类型的返回:
PATHINFO_DIRNAME – 目录
PATHINFO_BASENAME – 文件名(含扩展名)
PATHINFO_EXTENSION – 扩展名
PATHINFO_FILENAME – 文件名(不含扩展名)
例子
代码如下 | 复制代码 |
function get_extension($filename){ return pathinfo($filename,PATHINFO_EXTENSION); } |
调用
代码如下 | 复制代码 |
<?php print_r(pathinfo("/testweb/test.txt")); ?> |
以上将输出如下结果:
Array(
[dirname] => /testweb
[basename] => test.txt
[extension] => txt
)
如果要上传的用户最好要加以下面方法处理
$extension=$upfile['type']; //这个是由upload上传过来的文件信息
代码如下 | 复制代码 |
switch( $extension ) { case 'application/msword': $extension ='doc'; break; www.111cn.net case 'application/vnd.ms-excel': $extension ='xls'; break; case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': $extension ='docx'; break; case 'application/vnd.ms-powerpoint': $extension ='ppt'; break; case 'application/pdf': $extension ='pdf'; break; case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': $extension ='xlsx'; break; default: die('只允许上传doc,docx,xls,pdf,ppt文件 <a href="wend.php">重新上传</a>'); } |
时间: 2024-09-27 23:05:44