当发生upload_ERR_INI_size错误时,获取尝试上载的文件大小


Get file size of attempted upload when UPLOAD_ERR_INI_SIZE error occurs?

当您获得UPLOAD_ERR_INI_SIZE时,有什么方法可以获得尝试上传的文件大小吗?也就是说,上传的文件超过了php.ini中的upload_max_filesize指令。

您可以考虑使用$_SERVER['CONTENT_LENGTH']。它有一些开销,表示POST请求的总大小,但在某些情况下这是可以接受的。

否。

没有办法控制PHP的核心行为。当上传失败时,临时文件被删除,数组返回一个错误,没有文件大小:

Array
(
    [uploadedfile] => Array
        (
            [name] => SManager.chm
            [type] => 
            [tmp_name] => 
            [error] => 1
            [size] => 0
        )
)

当您返回move_uploaded_file()或copy()时,除了错误和原始文件的名称之外,我们没有临时文件和任何其他信息。

您可以随时获取PHP源代码,对其进行修改、编译并返回这些值。但是,这并不是一个标准。