Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP一次只能看到20个上传文件_Php_File_Upload - Fatal编程技术网

PHP一次只能看到20个上传文件

PHP一次只能看到20个上传文件,php,file,upload,Php,File,Upload,当我试图一次上载20多个文件时,web服务器只能看到前20个文件。任何其他文件都会被忽略。有什么问题 要尝试的简单代码: <form action="index.php" method="post" enctype="multipart/form-data"> <?php if($_FILES){ print_r($_FILES); } else{ for($i = 0; $i < 30; $i++) { echo '<inp

当我试图一次上载20多个文件时,web服务器只能看到前20个文件。任何其他文件都会被忽略。有什么问题

要尝试的简单代码:

<form action="index.php" method="post" enctype="multipart/form-data">
<?php
if($_FILES){
    print_r($_FILES);
}
else{
    for($i = 0; $i < 30; $i++)
    {
        echo '<input type="file" name="file'.$i.'"><br/>';
    }
}
?>
<input type="submit" value="go">
</form>
.htaccess: php_值max_file_上传100-没有帮助

ini_set('max_file_uploads', 100) - doesn't help
我刚刚在本地服务器的php.ini中添加了一行:

max_file_uploads = 100
这很有帮助。但我不认为宿主会在客户端的web服务器上更改它。如果不编辑
php.ini

您可能会遇到或设置限制,那么对该值的影响将非常酷

您可以在php.ini中更改它们(post_max_size应该大于upload_max_filesize)

将设置设置得更高(是的,这是一个“新”设置)


它是,因此可以在php.ini或webserver/apache配置中设置。恐怕没有
.htaccess
或'in-script'访问。

PHP可以发布多少内容是有限制的。请参阅和指令。

通过
max\u file\u uploads
配置选项将限制设置为20


您可以在托管时在网站目录中创建php.ini文件,并在其中写入以下内容:

最大文件上传量=400


这是允许在大多数主机上覆盖php.ini的方法(但不是在localhost XAMP等中)。就我所做的尝试而言,

最近我遇到了相同的问题,但不幸的是,上述解决方案都不适用于我。因此,我想我必须在这里分享工作的解决方案

当我试图上传50多张图片时,服务器将其限制为20张。(我在使用PHP5.3.6的Centos服务器上工作)

在PHP.ini文件中设置
max\u file\u uploads=100
甚至没有帮助,但文件上载数量限制更改为25

在phpinfo()页面中搜索数值25时,我发现一个参数suhosin.upload.max_uploads的值为25

将PHP.ini文件中的suhosin.upload.max_uploads设置为100以及
max_file_uploads=100
起作用,现在在服务器上我们最多可以上载100个文件。(我不确定是否有任何其他文件可以修改suhosin参数的值,但在php.ini或php.d/suhosin.ini中设置suhosin值可以:)


如果您将PHP作为Apache模块运行,您可能希望在虚拟主机级别(aka
httpd.conf
)对其进行更改。您需要记住,作为一个
PHP\u INI\u系统
指令,您必须使用PHP\uadmin\u值(常规PHP\u值将被忽略)。示例代码可以是:

<Location "/api">
    php_admin_value max_file_uploads 250
</Location>

php_admin_value max_file_上传250

步骤1:如果您使用Xampp服务器在本地主机上工作,请打开Xampp控制面板 单击config按钮,然后打开php.ini

步骤2:查找max\u文件上传=20

步骤3:使用自定义值更改值20

步骤4:保存这个php.ini文件并关闭

步骤5:通过单击停止重新启动Apache服务器,然后单击开始等待绿色背景表示Apache已成功启动


使用您的代码上传文件的最终测试

打印($\u文件)显示了什么?你能发布完整的输出吗?你确定你的浏览器一次发送的文件超过20个吗?是的。但这始终等于ini_集合(“max_file_uploads”,22);echo ini_get('max_file_uploads');。htaccess:php_value max_file_uploads 100对它没有帮助,因此可以在php.ini或webserver/apache配置中设置它。恐怕没有
.htaccess
或“脚本”访问权限。谢谢!这也是我的问题。
max_file_uploads = 100    
suhosin.upload.max_uploads=100
<Location "/api">
    php_admin_value max_file_uploads 250
</Location>