您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php 上传文件 判断 文件类型解决思路

2024/6/21 16:37:08发布38次查看
php 上传文件 判断 文件类型
我 现在 想 上传 一个 csv 文件,
在 php 里 怎么 判断 这个 文件 类型 是 csv 的呢?
注:
除了 判断 扩展名 之外,还有 什么 判段 的 方法??
------解决方案--------------------
$_files[file][type]
------解决方案--------------------
探讨
$_files[file][type]
------解决方案--------------------
学习了!!!!!!!!!!!!!!!
------解决方案--------------------
楼主非要把简单的事情复杂化。那也没办法!
------解决方案--------------------
网上流传的一个不错的方法
php codefunction ftype($filename){ $file = fopen($filename, rb); $bin = fread($file, 2); //只读2字节 fclose($file); $strinfo = @unpack(c2chars, $bin); $typecode = intval($strinfo['chars1'].$strinfo['chars2']); $filetype = ''; switch($typecode){ case 7790: $filetype = 'exe'; break; case 7784: $filetype = 'midi'; break; case 8297: $filetype = 'rar'; break; case 255216: $filetype = 'jpg'; break; case 7173: $filetype = 'gif'; break; case 6677: $filetype = 'bmp'; break; case 13780: $filetype = 'png'; break; default: $filetype = 'unknown'; } return $filetype;}
------解决方案--------------------
我认为8楼得方法已经尽最大程度判定了,按照楼主的意思就是上传的文件如何判定其内容是不是csv格式的(不相信扩展名),那就只能获取文件里面内容,并根据里面内容的形式判定是不是csv文件,但是这种办法是要在后台实现的,也就是说此时文件已经上传了,上传了再判定就没有什么用了。所以,个人认为,不上传,还要判断内容形式,没什么好的解决办法。
------解决方案--------------------

探讨
我的 意思是 csv 不是 用 , 这个 隔开的 文件 吗
aa,bb,cc,dd
ee,ff,gg,hh
类似 这样的 文件
按 8楼 的 说法 这个 文件 的 typecode=131112
可是
aa,b
b,cc,dd
ee,ff,gg,hh
这个 样子 也 是正确 的 csv 格式 类型 但是 这个 文件 的 typecode=105105
……
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product