VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php断点续传时如何把大文件分割的源码分享

php实现断点续传,就需要把大文件分割成多个小文件,然后单个上传。传完后在合并。

  1. │ merge.php –合并文件脚本  
  2. │ merge.zip –合并后文件  
  3. │ socket.zip –需要分割的文件  
  4. │ split.php –分割文件脚本  
  5. │  
  6. └─split –分割后小文件目录 

下面是源码,split.php

  1. <?php 
  2.  
  3. $fp=fopen("socket.zip","rb"); 
  4. $filesize= 10; 
  5. $i= 0; 
  6. $no= 1; 
  7. while(!feof($fp)) 
  8. $file=fread($fp,$filesize); 
  9.  
  10. $fp2=fopen("./split/socket.port".sprintf("%04d",$no).".".$i."-".($i+$filesize).".tmp","wb"); 
  11. fwrite($fp2,$file,$filesize); 
  12. fclose($fp2); 
  13. $i+=$filesize+1; 
  14. $no++; 
  15.  
  16. fclose($fp); 
  17. merge.php 
  18.  
  19. <?php 
  20. $filelist=glob('./split/*socket*.tmp'); 
  21. $filesize= 10; 
  22.  
  23. //print_r($filelist); 
  24. $mergeFileName='merg.zip'
  25.  
  26. unlink($mergeFileName); 
  27. $fp2=fopen($mergeFileName,"w+"); 
  28. foreach($filelistas$k=>$v
  29. $fp=fopen($v,"rb"); 
  30. $content=fread($fp,$filesize); 
  31.  
  32. fwrite($fp2,$content,$filesize); 
  33. unset($content); 
  34. fclose($fp); 
  35. echo$k,"\n"
  36. fclose($fp2); 
  37.  

出处:http://www.phpfensi.com/php/20180928/11299.html


相关教程