1、max_input_time 从php 脚本开始执行时算起
文件上传在 php 脚本执行时已经完成了,所以没有影响
2、正确!因为文件上传时传输的是经过base4编码的数据,php在接收时有一个解码过程,所以需要1:1的内存空间,否则失败。超过upload_max_size的错误是 php 脚本执行时可能出现的错误,前面已经说了,上传是在php脚本执行之前进行的。所以php不会报这个错
3、MAX_FILE_SIZE 至少在php5中是无效的,应该是一个bug
文件上传在 php 脚本执行时已经完成了,所以没有影响
2、正确!因为文件上传时传输的是经过base4编码的数据,php在接收时有一个解码过程,所以需要1:1的内存空间,否则失败。超过upload_max_size的错误是 php 脚本执行时可能出现的错误,前面已经说了,上传是在php脚本执行之前进行的。所以php不会报这个错
3、MAX_FILE_SIZE 至少在php5中是无效的,应该是一个bug
那按默认的设置:max_execution_time = 30;max_input_time=60。假设:脚本接收输入数据需要40秒,会不会在30秒时页面就已经超时了,max_input_time也就没有了,是不是这样子?
---------------------------------------------------------------------------------
2、1.9G的视频,php在解码时需要1.9G的内存,但memory_limit只有128M,按理说,是不是应该报个内存不够的错误?
因为上传是用post方式传输的,post_max_size 这个有调大吗?memory_limit 与 上传的文件大小关系不大,这个是php程序运行过程中所用到的内存。
而上传是在php执行之前运行的,所以调用的内存与memory_limit没有关系。
1、post_max_size 按默认的;2、按版主的说法,上传完之后,php有一个解码过程,相应的需要1.9G的内存来处理。那这个解码是在什么时候呢?
所以,我是否可以下结论:max_input_time无论怎么设置,对上传大文件都没什么影响?
至于网速是否会影响,过几天买个空间再来测试max_execution_time = 3
max_input_time = 1
upload_max_filesize = 2048M
post_max_size = 3024M
if(!empty($_FILES)){
echo "<pre />";
print_r($_FILES);
}
<form enctype="multipart/form-data" method="POST">
<input type="file" name="upfile" />
<input type="submit" value="提交" />
</form>