2017-10-05 73 views
0

突然,这三行显示以下错误消息。几个小时前,它只是工作,我没有改变任何文件,我可以很好地阅读文件并使用它。无法关闭上传文件(突然)

if (isset($_FILES['xlsxFile'])) { 
    $tmp_file = 'tmp.xlsx'; 
    move_uploaded_file($_FILES['xlsxFile']['tmp_name'], $tmp_file); 

    fclose($tmp_file); 
} 

警告:FCLOSE()预计参数1是资源,字符串中 /var/www/vhosts/foo.bar/httpdocs/foo.php给出在第5行

对我来说这感觉很奇怪,有什么东西可能在主机端改变了吗?

+1

你需要先打开/阅读一个文件'fclose()'才能运行http://php.net/manual/en/function.fclose.php;为什么你甚至使用它? –

回答

1

该代码示例中没有必要使用fclose($tmp_file)fclose用于释放由fopen致电的资源。

move_uploaded_file只需要两个字符串即文件的名称,并管理所有资源本身 - 您不需要为此释放资源。

+0

感谢您澄清,我GOOGLE了这一点,但它不是很清楚。我会尽快接受这一点,因为我被允许:) – Basti