当前位置: 首页 > 图文教程 > 网络编程 > PHP > 使用php的zlib压缩和解压缩swf文件

PHP
第十三节--对象串行化 -- Classes and Objects in PHP5 [13]
第十一节--重载 -- Classes and Objects in PHP5 [11]
第十节--抽象方法和抽象类 -- Classes and Objects in PHP5 [10]
第九节--绑定 -- Classes and Objects in PHP5 [9]
第八节--访问方式 -- Classes and Objects in PHP5 [8]
第七节--类的静态成员 -- Classes and Objects in PHP5 [7]
第六节--访问属性和方法 -- Classes and Objects in PHP5 [6]
第五节--克隆 -- Classes and Objects in PHP5 [5]
第四节--构造函数和析构函数 -- Classes and Objects in PHP5 [4
第三节--定义一个类 -- Classes and Objects in PHP5 [3]
第二节--PHP5 的对象模型 -- Classes and Objects in PHP5 [2]
第一节--面向对象编程 -- Classes and Objects in PHP5 [1]
初探 PHP5 (二)
初探 PHP5 (一)
SSI使用详解(二)
SSI使用详解(一)
Cookie及其使用(二)
Cookie及其使用(一)
实现跨域名Cookie
两种统计当前在线人数的方法

PHP 中的 使用php的zlib压缩和解压缩swf文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 134 ::
收藏到网摘: n/a

下面是我写的压缩和结压缩swf文件的例子:

没有加入判断swf文件是否已经压缩,入需要可以根据文件的第一个字节是'F'或者'C'来判断

以下为引用的内容:

  压缩swf文件:      //文件名
  $filename = "test.swf";
  //打开文件
  $rs = fopen($filename,"r");
  //读取文件的数据
  $str = fread($rs,filesize($filename));
  //设置swf头文件
  $head = substr($str,1,8);
  $head = "C".$head;
  //获取swf文件内容
  $body = substr($str,8);
  //压缩文件内容,使用最高压缩级别9
  $body = gzcompress($body, 9);
  //合并文件头和内容
  $str = $head.$body;
  //关闭读取的文件流
  fclose($rs);
  //创建一个新的文件
  $ws = fopen("create.swf","w");
  //写文件
  fwrite($ws,$str);
  //关闭文件留
  fclose($ws);
  //------http://soft.knowsky.com/----------------------------------------------------------------------------------------------
  ?>
  解压缩swf文件:
   
  //----------------------------------------------------------------------------------------------------
  //文件名
  $filename = "test.swf";
  //打开文件
  $rs = fopen($filename,"r");
  //读取文件的数据
  $str = fread($rs,filesize($filename));
  //设置swf头文件
  $head = substr($str,1,8);
  $head = "F".$head;
  //获取swf文件内容
  $body = substr($str,8);
  //解压缩文件内容
  $body = gzuncompress($body);
  //合并文件头和内容
  $str = $head.$body;
  //关闭读取的文件流
  fclose($rs);
  //创建一个新的文件
  $ws = fopen("create.swf","w");
  //写文件
  fwrite($ws,$str);
  //关闭文件留
  fclose($ws);
  //----------------------------------------------------------------------------------------------------
  ?>