我正在使用PHP 5.3.0并且遇到了可能是错误的东西(在这种情况下我会报告它)或者可能是我 - 所以我要求确认。
运行此代码时:
<?php
ini_set('upload_max_filesize', '10M');
echo ini_get('upload_max_filesize'), ", " , ini_get('post_max_size')
我最终得到了:
2M, 8M
尽管我的php.ini设置了更高的值:
upload_max_filesize = 10M
post_max_size = 10M
(仅发生一次)
因为在设置值以及在php.ini中设置之后发生错误我倾向于认为这是一个错误。任何人都可以确认或指出我哪里出错了吗?
更新:看起来像重启Apache修复了这个问题 - 如果你改变了php.ini,我一直认为不需要重新启动它。
答案 0 :(得分:65)
您使用的是共享托管服务提供商吗?它可能是主设置覆盖您尝试更改的任何内容。您是否尝试将这些添加到.htaccess中?
php_value upload_max_filesize 10M
php_value post_max_size 10M
答案 1 :(得分:59)
您无法使用shorthand notation在PHP.ini之外设置配置值。我认为当面对一个糟糕的值时,它的编译默认值会回落到2MB。
另一方面,我认为upload_max_filesize
不能使用ini_set()
进行设置。 "official" list表示PHP_INI_PERDIR
。
答案 2 :(得分:37)
由于我刚刚在共享主机上遇到此问题并且无法将值添加到我的.htaccess文件中,我以为我会分享我的解决方案。
我制作了一个带有值的ini文件。很简单:
创建一个名为“.user.ini”的文件并添加您的值
upload_max_filesize = 150M
post_max_size = 150M
热潮,问题解决了。
答案 3 :(得分:8)
我使用与我的index.php脚本相同的目录中的.user.ini文件来加载我的应用程序。以下是内容:
upload_max_filesize = "20M"
post_max_size = "25M"
这是Heroku的推荐解决方案。
答案 4 :(得分:3)
这也可以通过apache配置进行控制。检查httpd.conf和/或.htaccess,如下所示:
php_value upload_max_filesize 10M
答案 5 :(得分:0)
仅当问题与WordPress安装有关时,才可以应用此解决方案!
如果您没有FTP访问权限或懒得编辑文件,
您可以使用Increase Maximum Upload File Size plugin来增加最大上传文件大小。
答案 6 :(得分:0)
默认情况下,PHP允许在服务器上最多上传2 MB文件。但是您可以根据自己的条件修改文件上传的最大大小。通过使用PHP配置文件php.ini,您可以增加或减少PHP中的文件上传大小。
首先在文本编辑器中打开php.ini文件。 搜索upload_max_filesize变量,并指定要增加的大小。
搜索post_max_size变量并指定要增加的大小。
post_max_size = 128M
您可以从here
进行检查答案 7 :(得分:-1)
如果你动态使用ini_set,那么你会在http://php.net/manual/en/ini.core.php找到这样的信息。 upload_max_filesize和post_max_size不能随时更改(PHP_INI_PERDIR)。
只有php.ini,.htaccess或vhost配置更改似乎会更改这些变量。
答案 8 :(得分:-1)
如果您在本地服务器(例如wamp或xampp)中运行,请确保它使用您认为的php.ini。这些服务器通常默认为不在你的html docs文件夹中的php.ini。
答案 9 :(得分:-1)
我遇到了同样的问题,但我发现并非所有配置设置都可以使用ini_set()函数设置,请查看Where a configuration setting may be set
答案 10 :(得分:-11)
您也可以在php文件中使用
<?php ini_set('upload_max_filesize', '200M'); ?>