加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php断点续传之文件分割合并详解

发布时间:2020-12-12 21:55:40 所属栏目:PHP教程 来源:网络整理
导读:php实现断点续传,就需要把大文件分割成多个小文件,然后单个上传。传完后在合并。 │ merge.php –合并文件脚本 │ merge.zip –合并后文件 │ socket.zip –需要分割的文件 │ split.php –分割文件脚本 │ └─split –分割后小文件目录 下面是源码 split

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

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

下面是源码

split.php

$fp = fopen("socket.zip","rb");
$filesize = 10;
$i = 0;
$no = 1;
while(!feof($fp))
{
$file = fread($fp,$filesize);

$fp2 = fopen("./split/socket.port".sprintf("%04d",$no).".".$i."-".($i+$filesize).".tmp","wb");
fwrite($fp2,$file,$filesize);
fclose($fp2);
$i+=$filesize+1;
$no++;
}

fclose($fp);

merge.php

//print_r($filelist);
$mergeFileName = 'merg.zip';

unlink($mergeFileName);
$fp2 = fopen($mergeFileName,"w+");
foreach($filelist as $k => $v)
{
$fp = fopen($v,"rb");
$content = fread($fp,$filesize);

fwrite($fp2,$content,$filesize);
unset($content);
fclose($fp);
echo $k,"n";
}
fclose($fp2);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读