【发布时间】:2011-01-12 09:45:33
【问题描述】:
我在通过 php 上传文件时遇到问题。我在进程开始时检查文件类型并收到错误消息。
这是我得到的错误:
警告:非法偏移类型 /balblabla/DBfunctions.inc.php 上线 183
这是打印出来的 $_FILES var
数组 ( [图片] => 数组 ( [名称] => JPG.jpg [类型] => 图像/jpeg [tmp_name] => /tmp/phpHlrNY8 [错误] => 0 [大小] => 192221 ) )
这是我正在使用的给我带来问题的代码段:
function checkFile($file, $type)
{
if( in_array($_FILES[$file]['type'], $type) ){ // <--- LINE 183
return true;
}//if
return false;
} // end checkFile()
这是调用函数的代码行
if(checkFile($_FILES['Picture'], array("image/jpeg")) == true){
//做事
}// 如果结束
我已经在我自己的服务器上的几十个网站上使用了这段代码,所以我猜这是一些不同的配置选项。我怎样才能修改我的代码以便它在这个不同的服务器上工作?
【问题讨论】:
-
只是一个小建议,你不必检查这个表达式
checkFile(...) == true,只要if (checkFile(...))返回值true,你的做的东西 将被执行
标签: php arrays file-upload