Postman多文件上传至PHP $_FILES仅接收20个,如何捕获全部30个?
问题解决方法
$_FILES本身没有数量限制,但PHP的默认配置会限制单次请求的上传文件数量,这就是你只收到20个文件的核心原因。
要让PHP捕获全部30个文件,需要调整PHP的相关配置:
- 修改**
max_file_uploads**参数:这个配置控制单次请求允许上传的最大文件数,默认值通常为20。你需要将其设置为大于等于30,比如在php.ini中修改:max_file_uploads = 30 - 同步检查并调整文件大小相关配置:避免因单个文件或总请求大小超限导致文件丢失
upload_max_filesize:控制单个上传文件的最大允许大小,根据你的文件实际大小调整,例如:upload_max_filesize = 10Mpost_max_size:控制POST请求的总大小,需要大于所有上传文件的总大小,例如:post_max_size = 300M
修改配置后,必须重启Web服务器(如Apache、Nginx)或PHP-FPM才能让新配置生效。
如果无法修改全局php.ini,可以尝试在你的接口脚本开头临时设置(部分环境可能禁用此功能):
ini_set('max_file_uploads', 30); ini_set('upload_max_filesize', '10M'); ini_set('post_max_size', '300M');
最后确认Postman的FormData中确实正确添加了全部30个文件,没有遗漏或错误配置。
内容的提问来源于stack exchange,提问作者sasori
相关产品推荐
相关产品推荐

