PHP实现文件上传与下载

php中文网
发布: 2016-07-29 08:49:43
原创
1335人浏览过

文件上传原理:
将客户端的文件上传到服务器端,再将服务器端的临时文件移动到指定目录即可。
客户端配置:
1.表单页面
2.表单的发送方式为post
3.添加enctype=”multipart/form-data”

$_FILES中保存着上传文件的信息
name:上传文件的名称
type:上传文件的MIME类型
tmp_name:上传到服务器上的临时文件名
size:上传文件大小
error:上传文件的错误号

move_uploaded_file(tmpname,destination):将服务器上临时文件移动到指定目录,并命名。
如:
move_uploaded_file(tmpname,"uploads/".filename);
还有:
copy(src,dst);

文件上传配置:php.ini
服务器端配置:
file_uploads = on ,支持HTTP上传
upload_tmp_dir= ,临时文件保存的目录
upload_max_filesize = 2M,允许上传文件的最大值
max_file_uploads = 20,允许一次上传的最大文件数
post_max_size = 8M,POST方式发送数据的最大值

max_execution_time = -1,设置了脚本被解析器终止之前允许的最大执行时间,单位为秒,防止程序写的不好而占尽服务器资源
max_input_time = 60,脚本解析输入数据允许的最大时间,单位是秒
max_input_nesting_level = 64,设置输入变量的嵌套深度
max_input_vars = 1000,接受多少输入的变量(限制分别应用于GET,_POST,$_COOKIE超全局变量)指令的使用减轻了以哈希碰撞来进行拒绝服务攻击的可能性。如有超过指令指定数量的变量,将会导致E_WARING的产生,更多的输入变量将会从请求中截断。
memory_limit = 128M,最大单线程的独立内存使用量。也就是一个web请求,给与线程最大的内存使用量的定义。
PHP实现文件上传与下载
PHP实现文件上传与下载
PHP实现文件上传与下载
注意:在客户端限制的代码,可以通过在浏览器中修改代码,而使限制没有用。所以限制都应该在服务器端。

服务器端限制:
限制上传文件大小(通过size)
限制上传文件类型(in_array(后缀,数组),判断文件后缀是否在指定规定类型的数组里)
检测是否为真实图片类型(getimagesize)
检测是否为HTTP POST方式上传(is_uploaded_file,返回true表示是通过PHP的post方式上传的)

生成唯一字符串:
md5(uniqid(microtime(true),true))

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了PHP实现文件上传与下载,包括了文件上传,php方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号