ホームページ >バックエンド開発 >PHPチュートリアル >PHP ラージ ファイル ストレージの例、さまざまなファイルの分割とマージ (バイナリの分割とマージ)

PHP ラージ ファイル ストレージの例、さまざまなファイルの分割とマージ (バイナリの分割とマージ)

WBOY
WBOYオリジナル
2016-06-13 13:01:541477ブラウズ

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);
?>
?
split.php
? ?

join.php ? ?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。