php分割大文件和php合并文件

1.分割

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

2.合并

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值