我想动态更改最大上传文件限制。意思是不改变服务器上的php.ini文件
每当用户上传超过2 mb时,我的上传限制应该更改。
我想通过php完成所有这些。
提前致谢。
答案 0 :(得分:5)
在运行php脚本之前强制执行upload_max_filesize强制执行的限制,因此无法使用ini_set动态更改设置。
有关文件上载ini设置及其更改位置的详细信息,请参阅: - http://php.net/manual/en/ini.core.php#ini.sect.file-uploads - http://php.net/manual/en/configuration.changes.modes.php
假设“用户”是指您网站的访问者,实际上只有两种方法可以强制实施此限制,而文件无法到达最终目的地:
1)上传之前:在客户端。你绝对可以使用基于java的上传器来完成这项工作。是否可以使用javascript获取所选文件的文件大小,我不知道。
2)文件上传到服务器后,但在将文件移动到最终目的地之前(运行move_uploaded_file之前)
答案 1 :(得分:3)
试试这个:
ini_set('upload_max_filesize', your_value_here);
还要确保您为:
指定了正确的可接受设置file_uploads
upload_max_filesize
max_input_time
memory_limit
max_execution_time
post_max_size
答案 2 :(得分:1)
如果您无法修改php.ini,则可以使用.htaccess文件进行修改:
php_value upload_max_filesize 50M
php_value post_max_size 50M