php zlib压缩和解压缩swf文件的代码


Posted in PHP onDecember 30, 2008

使用php就不一样了,php包含了zlib的链接库,可以直接使用其相关功能,下面是我写的压缩和结压缩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);
//----------------------------------------------------------------------------------------------------
?>
解压缩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);
//----------------------------------------------------------------------------------------------------
?>
怎么样?是不是很简单?呵呵,php给我们的不止是简单“`

PHP 相关文章推荐
桌面中心(三)修改数据库
Oct 09 PHP
PHP4实际应用经验篇(9)
Oct 09 PHP
php+mysql实现数据库随机重排实例
Oct 17 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
为你总结一些php系统类函数
Oct 21 PHP
php验证码的制作思路和实现方法
Nov 12 PHP
PHP7+Nginx的配置与安装教程详解
May 10 PHP
thinkPHP2.1自定义标签库的导入方法详解
Jul 20 PHP
PHP-CGI远程代码执行漏洞分析与防范
May 07 PHP
php利用ffmpeg提取视频中音频与视频画面的方法详解
Jun 07 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
Aug 03 PHP
Referer原理与图片防盗链实现方法详解
Jul 03 PHP
PHP HTML代码串截取代码
Dec 29 #PHP
PHP MSSQL 存储过程的方法
Dec 24 #PHP
php 获取完整url地址
Dec 20 #PHP
php xml-rpc远程调用
Dec 19 #PHP
php 设计模式之 工厂模式
Dec 19 #PHP
php 设计模式之 单例模式
Dec 19 #PHP
PHP 采集程序 常用函数
Dec 18 #PHP
You might like
PHP+Tidy-完美的XHTML纠错+过滤
2007/04/10 PHP
php adodb连接带密码access数据库实例,测试成功
2008/05/14 PHP
2款PHP无限级分类实例代码
2015/11/11 PHP
深入解析PHP的Laravel框架中的event事件操作
2016/03/21 PHP
PHP中读取文件的几个方法总结(推荐)
2016/06/03 PHP
分享一个漂亮的php验证码类
2016/09/29 PHP
PHP获取MySQL执行sql语句的查询时间方法
2018/08/21 PHP
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
JavaScript中使用stopPropagation函数停止事件传播例子
2014/08/27 Javascript
js实现二代身份证号码验证详解
2014/11/20 Javascript
javascript操作表格排序实例分析
2015/05/06 Javascript
详解从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
2017/05/22 Javascript
jQuery实现拼图小游戏(实例讲解)
2017/07/24 jQuery
详谈ES6中的迭代器(Iterator)和生成器(Generator)
2017/07/31 Javascript
Vue之Vue.set动态新增对象属性方法
2018/02/23 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
详解关于element级联选择器数据回显问题
2019/02/20 Javascript
JavaScript原型继承和原型链原理详解
2020/02/04 Javascript
Python_查看sqlite3表结构,查询语句的示例代码
2019/07/17 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
斯德哥尔摩通票:Stockholm Pass
2018/01/09 全球购物
竞职演讲稿范文
2014/01/11 职场文书
高二化学教学反思
2014/01/30 职场文书
文明餐桌行动实施方案
2014/02/19 职场文书
《祁黄羊》教学反思
2014/04/22 职场文书
计算机应用专业毕业生求职信
2014/06/03 职场文书
单位委托书怎么写
2014/09/21 职场文书
幼儿园三八妇女节活动总结
2015/02/06 职场文书
我们的节日中秋节活动总结
2015/03/23 职场文书
工作失职自我检讨书
2015/05/05 职场文书
文艺节目主持词
2015/07/06 职场文书
基于JavaScript实现年月日三级联动
2021/06/22 Javascript
Spring中bean的生命周期之getSingleton方法
2021/06/30 Java/Android
mysql分表之后如何平滑上线详解
2021/11/01 MySQL
CDPR谈《巫师》新作用虚幻5原因 称不会为Epic独占
2022/04/06 其他游戏