-5

如果我们有

$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 is not == png for php
谁能帮我解决这个问题?
以及如何防止文件上传?

$filename = explode('.',$nn);

好吗?那么如果用户上传
my.pic.jpg 呢?

4

2 回答 2

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等。使用上面的代码来修复它)。

于 2013-01-27T01:58:18.537 回答
0


if(in_array(strtolower($filetype),$allowimg)){
于 2013-01-27T02:00:06.773 回答