如果我们有
$allowimg = array('gif','bmp','jpg','png','jpeg','tif','tiff','tga','psd');
如果我们输入此代码
,想要使用它上传中心if(in_array($filetype,$allowimg)){
//pic
$error = 0;
$filedoc = 'pic';
}
else{ echo 'bad file type!';}
如果用户上传my.PNG
它的运行Else cuz PNG不是== png for php
任何人都可以帮我这个吗?
以及如何保护文件上传?
$filename = explode('.',$nn);
好吗?那么如果用户上传了什么呢 my.pic.jpg?
答案 0 :(得分:3)
只需strtolower()
文件类型!
if(in_array(strtolower($filetype),$allowimg)){
//pic
$error = 0;
$filedoc = 'pic';
}
else{ echo 'bad file type!';}
问题的第二部分
虽然我建议你为每个问题提出一个新问题,而不是在一个任务中提出一组问题,但这里是我通常从字符串中获取文件名的方法。
$ext = pathinfo($filename, PATHINFO_EXTENSION);
pathinfo()
函数提供了抛出路径的信息。您可以选择通过在第二个参数中指定它来获得您想要的字符串。
$ext
现在包含文件的扩展名:jpg
(可以是JPG
JPg
等。使用上面的代码来解决该问题。
答案 1 :(得分:0)
if(in_array(strtolower($filetype),$allowimg)){