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

PHP
PHP自动更新新闻DIY
模拟OICQ的实现思路和核心程序(三)
如何对PHP程序中的常见漏洞进行攻击(下)
通过ODBC连接的SQL SERVER实例
使用sockets:从新闻组中获取文章(二)
PHP+MYSQL的文章管理系统(二)
使用sockets:从新闻组中获取文章(三)
使用sockets:从新闻组中获取文章(一)
用cookies来跟踪识别用户
PHP实现分页的一个示例
PHP+MYSQL的文章管理系统(一)
消息持续发送的完整例子
如何利用php+mysql保存和输出文件
操作Oracle的php类
计数器详细设计
一个程序下载的管理程序(三)
一个程序下载的管理程序(一)
在php中取得image按钮传递的name值
一个程序下载的管理程序(二)
一个程序下载的管理程序(四)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 169 ::
收藏到网摘: 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);
  //----------------------------------------------------------------------------------------------------
  ?>