PHP实现的大文件切割与合并功能示例


Posted in PHP onApril 10, 2018

本文实例讲述了PHP实现的大文件切割与合并功能。分享给大家供大家参考,具体如下:

分割代码

split.php

<?php
$i  = 0;                 //分割的块编号
$fp  = fopen("hadoop.sql","rb");      //要分割的文件
$file = fopen("split_hash.txt","a");    //记录分割的信息的文本文件,实际生产环境存在redis更合适
while(!feof($fp)){
    $handle = fopen("hadoop.{$i}.sql","wb");
    fwrite($handle,fread($fp,5242880));//切割的块大小 5m
    fwrite($file,"hadoop.{$i}.sql\r\n");
    fclose($handle);
    unset($handle);
    $i++;
}
fclose ($fp);
fclose ($file);
echo "ok";

合并代码

merge.php

<?php
$hash = file_get_contents("split_hash.txt"); //读取分割文件的信息
$list = explode("\r\n",$hash);
$fp = fopen("hadoop2.sql","ab");    //合并后的文件名
foreach($list as $value){
  if(!empty($value)) {
    $handle = fopen($value,"rb");
    fwrite($fp,fread($handle,filesize($value)));
    fclose($handle);
    unset($handle);
  }
}
fclose($fp);
echo "ok";

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 和 MySQL 基础教程(二)
Oct 09 PHP
PHP+MySQL5.0中文乱码解决方法
Nov 20 PHP
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
Nov 18 PHP
php adodb介绍
Mar 19 PHP
一些需要禁用的PHP危险函数(disable_functions)
Feb 23 PHP
php Hex RGB颜色值互换的使用
May 10 PHP
DOM XPATH获取img src值的query
Sep 23 PHP
php实现cc攻击防御和防止快速刷新页面示例
Feb 13 PHP
zf框架db类的分页示例分享
Mar 14 PHP
php实现基于pdo的事务处理方法示例
Jul 21 PHP
phpStudy配置多站点多域名和多端口的方法
Sep 01 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
Jun 03 PHP
PHP实现分布式memcache设置web集群session同步的方法
Apr 10 #PHP
PHP实现Redis单据锁以及防止并发重复写入
Apr 10 #PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
Apr 09 #PHP
基于CI(CodeIgniter)框架实现购物车功能的方法
Apr 09 #PHP
PHP缓存工具XCache安装与使用方法详解
Apr 09 #PHP
PHP+Session防止表单重复提交的解决方法
Apr 09 #PHP
PHP创建自己的Composer包方法
Apr 09 #PHP
You might like
使用PHP模拟HTTP认证
2006/10/09 PHP
PHP4实际应用经验篇(5)
2006/10/09 PHP
让div层随鼠标移动的实现代码 ie ff
2009/12/18 Javascript
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
2012/12/19 Javascript
NodeJS学习笔记之(Url,QueryString,Path)模块
2015/01/13 NodeJs
使用HTML+CSS+JS制作简单的网页菜单界面
2015/07/27 Javascript
JavaScript位移运算符(无符号) &gt;&gt;&gt; 三个大于号 的使用方法详解
2016/03/31 Javascript
关于jQuery库冲突的完美解决办法
2017/05/20 jQuery
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
简述jQuery Easyui一些用法
2017/08/01 jQuery
python爬取安居客二手房网站数据(实例讲解)
2017/10/19 Javascript
ztree实现左边动态生成树右边为内容详情功能
2017/11/03 Javascript
Nodejs模块载入运行原理
2018/02/23 NodeJs
layer页面跳转,获取html子节点元素的值方法
2019/09/27 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
闭包在python中的应用之translate和maketrans用法详解
2014/08/27 Python
回调函数的意义以及python实现实例
2017/06/20 Python
Python中staticmethod和classmethod的作用与区别
2018/10/11 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
Django 5种类型Session使用方法解析
2020/04/29 Python
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
乌克兰数字设备、配件和智能技术的连锁商店:KTC
2020/08/18 全球购物
护理实习自我鉴定
2013/12/14 职场文书
网络信息管理员岗位职责
2014/01/05 职场文书
会计大学生职业生涯规划书范文
2014/01/13 职场文书
回门宴答谢词
2014/01/13 职场文书
四群教育工作实施方案
2014/03/26 职场文书
关于建议书的格式范文
2014/05/20 职场文书
公司离职证明标准格式
2014/11/18 职场文书
2014年设备管理工作总结
2014/11/26 职场文书
体育教师个人工作总结
2015/02/09 职场文书
限期整改通知书
2015/04/22 职场文书
React如何创建组件
2021/06/27 Javascript
RPM包方式安装Oracle21c的方法详解
2021/08/23 Oracle
CSS布局之浮动(float)和定位(position)属性的区别
2021/09/25 HTML / CSS