我试图使用文件输入来上传一个3.5MB的文件,但是当我尝试上传它时,我得到一个$ _FILES ['error'] == 2,我相信这告诉我文件太大了.
我该怎么做才能上传这个?
这是我的一些代码:
<input type="hidden" name="MAX_FILE_SIZE" value="100000000000000000000000000000000000000000000000000000000000000">
<input type="file" id="home_pdf" name="home_pdf">
Run Code Online (Sandbox Code Playgroud)
我的php设置如下:
post_max_size = 128M
memory_limit = 128M
max_file_uploads = 20
max_execution_time = 30
upload_max_filesize = 128M
Run Code Online (Sandbox Code Playgroud)
10000000000000000000000000000000000000000000000000000000000是一个太大的数字,并溢出.请改用134217728(128MB).
PHP在64位安装上的最大int值为9,223,372,036,854,775,807,在32位安装上的最大int值为2,147,483,647.
我已经对此进行了测试,可以重现您的问题,并通过降低价值来解决问题.
请参阅POST方法上载
MAX_FILE_SIZE隐藏字段(以字节为单位)必须位于文件输入字段之前,其值是PHP接受的最大文件大小.应始终使用此表单元素,因为它可以节省用户等待传输大文件的麻烦,只是发现它太大而传输失败.请记住:在浏览器端愚弄此设置非常简单,因此不要依赖此功能阻止更大尺寸的文件.它仅仅是应用程序客户端用户的便利功能.但是,最大大小的PHP设置(在服务器端)不能被愚弄.