抱歉,如果这个问题很琐碎或者很明显,我通过谷歌搜索无法找到答案。
$_FILES ['name']
数组中的size
值从哪里来?你能相信它($_FILES['name']['size']
)的值吗?还是说你仍然需要使用filesize()
函数来检查它?
换句话说,在上传文件时是否有必要通过filesize
函数检查实际文件大小以观察它是否被正确上传?
上传后PHP似乎会重新计算文件的大小。虽然客户端会发送一个指定文件content-length
的头部,但根据测试(使用PHP 5.5),该头部被忽略了,实际上是通过测量来确定文件大小。个人建议始终使用filesize()
来获取文件大小,因为可以更加确信所使用的测量方式,但最终决定权在您手中。无论如何,$_FILES['file_name']['size']
似乎是一个安全的值。
upload_max_filesize
则使用上传时的计数。我会尝试进行一些测试并回复您。 - Anonymous您应该检查客户端报告的$_FILES ['file_name'] ['size']
是否等于filesize()
给出的值。 差异可能表明在上传文件时发生错误。