zoukankan      html  css  js  c++  java
  • PHP大文件存储示例,各种文件分割和合并(二进制分割与合并)

    最近要对视频进行上传,由于涉及到的视频非常的大,因此采用的是分片上传的格式,下面是一个简单的例子:

    split.php

     1 <?php
     2 $i    = 0;                               //分割的块编号
     3 $fp   = fopen("abc.wmv","rb");     //要分割的文件
     4 $file = fopen("split_hash.txt","a");     //记录分割的信息的文本文件
     5 while(!feof($fp))
     6 {
     7         $handle = fopen("abc.wmv.{$i}","wb");
     8         fwrite($handle,fread($fp,5000000));            //5000000 可以自定义.就是每个所分割的文件大小
     9         fwrite($file,"qqdjz_002.wmv.{$i}
    ");
    10         fclose($handle);
    11         unset($handle);
    12         $i++;
    13 }
    14 fclose ($fp);
    15 fclose ($file);
    16 echo "ok";
    17 ?>

    join.php:

     1 <?php  
     2 $mov  = file_get_contents("abc.txt");           //读取分割文件的信息  
     3 $list = explode("
    ",$mov);  
     4 $fp   = fopen("split.wmv","ab");                  //合并后的文件名  
     5 foreach($list as $value)  
     6 {  
     7 if(!emptyempty($value)) {    
     8       $handle = fopen($value,"rb");  
     9     fwrite($fp,fread($handle,filesize($value)));  
    10       fclose($handle);  
    11       unset($handle);  
    12 }  
    13 }  
    14 fclose($fp);  
    15 ?>  
  • 相关阅读:
    快速入门各种跨域
    常用知识点
    比较少用的格式
    git
    “没有用var声明的为全局变量”这种说法不准确
    类数组对象
    函数上下文的变量对象实例
    var a =10 与 a = 10的区别
    原型链与作用域链、执行上下文
    闭包的作用
  • 原文地址:https://www.cnblogs.com/shangzekai/p/4959910.html
Copyright © 2011-2022 走看看