Maison >développement back-end >tutoriel php > PHP大文件储存示例,各种文件分割和合并(二进制分割与合并)

PHP大文件储存示例,各种文件分割和合并(二进制分割与合并)

WBOY
WBOYoriginal
2016-06-13 13:01:541240parcourir

PHP大文件存储示例,各种文件分割和合并(二进制分割与合并)

简单示例:

?

split.php

?

<?php
$i    = 0;                               //分割的块编号
$fp   = fopen("abc.wmv","rb");     //要分割的文件
$file = fopen("split_hash.txt","a");     //记录分割的信息的文本文件
while(!feof($fp))
{
        $handle = fopen("abc.wmv.{$i}","wb");
        fwrite($handle,fread($fp,5000000));            //5000000 可以自定义.就是每个所分割的文件大小
        fwrite($file,"qqdjz_002.wmv.{$i}\r\n");
        fclose($handle);
        unset($handle);
        $i++;
}
fclose ($fp);
fclose ($file);
echo "ok";
?>

?



join.php

?

<?php
$mov  = file_get_contents("abc.txt");           //读取分割文件的信息
$list = explode("\r\n",$mov);
$fp   = fopen("split.wmv","ab");                  //合并后的文件名
foreach($list as $value)
{
<span style="white-space: pre;">	</span>if(!empty($value)) {  
      <span style="white-space: pre;">		</span>$handle = fopen($value,"rb");
        <span style="white-space: pre;">	</span>fwrite($fp,fread($handle,filesize($value)));
        <span style="white-space: pre;">	</span>fclose($handle);
        <span style="white-space: pre;">	</span>unset($handle);
<span style="white-space: pre;">	</span>}
}
fclose($fp);
?>
?
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn