位置: 编程技术 - 正文

PHP搭建大文件切割分块上传功能示例(php处理大文件)

编辑:rootadmin

推荐整理分享PHP搭建大文件切割分块上传功能示例(php处理大文件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:简单的php文件,php处理大文件,php 大文件下载,php大文件导出,php大文件导出,php处理大文件,php大文件导出,php大文件导出,内容如对您有帮助,希望把文章链接给更多的朋友!

背景

在网站开发中,文件上传是很常见的一个功能。相信很多人都会遇到这种情况,想传一个文件上去,然后网页提示“该文件过大”。因为一般情况下,我们都需要对上传的文件大小做限制,防止出现意外的情况。 但是在有些业务场景中,大文件上传又是必须的,比如邮箱附件,或者内部OA等等。

问题

服务端为什么不能直接传大文件?跟php.ini里面的几个配置有关

当然不能简单粗暴的把上面几个值调大,否则服务器内存资源吃光是迟早的问题。

解决思路

好在HTML5开放了新的FILE API,也可以直接操作二进制对象,我们可以直接在浏览器端实现文件切割,按照以前的做法就得用Flash的方案,实现起来会麻烦很多。

JS思路

1.监听上传按钮的onchange事件

2.获取文件的FILE对象

PHP搭建大文件切割分块上传功能示例(php处理大文件)

3.把文件的FILE对象进行切割,并且附加到FORMDATA对象中

4.把FORMDATA对象通过AJAX发送到服务器

5.重复3、4步骤,直到文件发送完。

PHP思路

1.建立上传文件夹

2.把文件从上传临时目录移动到上传文件夹

3.所有的文件块上传完成后,进行文件合成

4.删除文件夹

5.返回上传后的文件路径

DEMO代码

前端部分代码

PHP部分代码

存在的问题

这只是一个简单的DEMO,有很多地方需要改进,比如上传的文件夹与临时文件放在一起,用户中途取消也没有发请求进行清理,容易造成文件冗余。JS采用的是同步模型,文件需要一块一块按顺序上传,会导致整个浏览器在上传的过程中出于堵塞的状态,按了按钮可能需要几秒钟才能反应过来,用户体验不好。真正需要产品化的时候就要综合考虑多种情况,当然作为一个示例,引导大家了解分块上传的思路还是不错的。

标签: php处理大文件

本文链接地址:https://www.jiuchutong.com/biancheng/296218.html 转载请保留说明!

上一篇:php与c 实现按行读取文件实例代码(php如何实现)

下一篇:CI框架实现优化文件上传及多文件上传的方法(ci框架教程)

  • 增值税加计扣除怎么做账
  • 小规模纳税人工程款税率是多少
  • 出售股东
  • 费用多报销了,但已经给了,怎么办
  • 独立核算的分公司
  • 存货售出后是否含税
  • 装载机折旧年限是几年
  • 本期准予抵减税额怎么算
  • 一次性收取全年培训费
  • 发票大头小尾什么意思
  • 房产预收款怎么记帐?
  • 包装成本为产品的百分比
  • 个人债务转成股份
  • 营改增后服务业账务处理
  • 免税商品销售要缴税吗
  • 物业前期介入费用测算
  • 冷库租赁收入税率
  • 电梯保养维护费用
  • 广告公司税收分析
  • 外币折算买入价卖出价
  • 防伪税控服务费减免文件
  • 销售发票冲红的条件有哪些?
  • 公司注销后银行账户怎么注销
  • 广告费发票收到但是不抵扣怎么做账?
  • 补交以前年度工会经费所得税如何申报
  • 企业收到损坏赔偿金
  • 营改增后融资租赁税率
  • 工程施工购买的材料费会计分录
  • 失联发票进项税额转出
  • 退付手续费怎么操作
  • 消耗性生物资产如何结转成本
  • 公司收到银行转账会计分录
  • 苹果6s自动清理
  • 先付费后收到发票怎么做分录
  • 电脑锁屏密码设置步骤
  • 当月认证了发票但没有进行增值税申报
  • mini program是什么
  • 其他应收款和其他应付款常常被用作抵消
  • 企业租赁不动产税率
  • Symfony2中被遗弃的getRequest()方法分析
  • uniapp动态修改pages.json
  • php删除txt指定内容
  • web前端框架是什么
  • declare -i
  • 常用php数组排序方法
  • linux rdp客户端
  • 职工医保报销后病情会泄露给单位吗
  • 赔绿化损失费的法律规定
  • python多线程多核
  • 瓶盖再来一次表情包
  • 资产负债表的种类
  • 教育培训行业人员
  • 进出口货物收发货人报关注册登记证书
  • 个人承担的个税是公司的成本费用吗
  • 利润分配未分配利润是净利润吗
  • 以红字冲回
  • 收到赞助费怎么回复客户
  • 煤炭资源税优惠政策
  • 土地租赁费如何摊销
  • 劳务派遣公司账务
  • 购买劳务费会计分录
  • 开出地税发票(工程款)怎么做账?
  • 公司赠送客户礼品怎么做账
  • 过路费纸质发票可以抵扣增值税吗
  • 处置投资性房地产取得的收入属于企业收入吗
  • 当月发生的费用下月支付
  • 营业执照过期多久不能审
  • 企业财务建账应由谁负责
  • sql server数据库正在恢复
  • 进程audiodg.exe
  • win7系统如何修改锁屏密码
  • win10系统怎么找到桌面
  • android重写方法
  • jquery动画让div旋转
  • redis基础教程
  • jquery获取指定元素
  • 企业所得税国家和地方分配比例
  • 百望税控盘电子发票开好了如何打印及导出发票
  • 地方税务局是事业单位吗
  • 劳务分包需要交什么税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设