// Other variables $MAX_FILENAME_LENGTH = 260; $file_name = $_FILES[$upload_name]['name']; //echo "testing-".$file_name."<br>"; //$file_name = strtolower($file_name); $file_extension = end(explode('.', $file_name)); //ERROR ON THIS LINE $uploadErrors = array( 0=>'There is no error, the file uploaded with success', 1=>'The uploaded file exceeds the upload max filesize allowed.', 2=>'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form', 3=>'The uploaded file was only partially uploaded', 4=>'No file was uploaded', 6=>'Missing a temporary folder' );
有任何想法吗?2天后仍然卡住。
将结果分配explode给变量并将该变量传递给end:
explode
end
$tmp = explode('.', $file_name); $file_extension = end($tmp);
问题是,这end需要一个引用,因为它修改了数组的内部表示(即它使 当前元素指针 指向最后一个元素)。
的结果explode('.', $file_name)不能变成参考。这是 PHP 语言中的一个限制,可能出于简单原因而存在。
explode('.', $file_name)