php zlib壓縮和解壓縮swf文件的代碼
更新時間:2008年12月30日 15:42:27 作者:
我在以前寫過怎么使用c#來壓縮和解壓縮swf文件,解壓縮,壓縮和讀取flash頭文件信息
使用php就不一樣了,php包含了zlib的鏈接庫,可以直接使用其相關(guān)功能,下面是我寫的壓縮和結(jié)壓縮swf文件的例子:
//沒有加入判斷swf文件是否已經(jīng)壓縮,入需要可以根據(jù)文件的第一個字節(jié)是'F'或者'C'來判斷
壓縮swf文件:
//--------------------------------------------------------------------------------------------------
//文件名
$filename = "test.swf";
//打開文件
$rs = fopen($filename,"r");
//讀取文件的數(shù)據(jù)
$str = fread($rs,filesize($filename));
//設(shè)置swf頭文件
$head = substr($str,1,8);
$head = "C".$head;
//獲取swf文件內(nèi)容
$body = substr($str,8);
//壓縮文件內(nèi)容,使用最高壓縮級別9
$body = gzcompress($body, 9);
//合并文件頭和內(nèi)容
$str = $head.$body;
//關(guān)閉讀取的文件流
fclose($rs);
//創(chuàng)建一個新的文件
$ws = fopen("create.swf","w");
//寫文件
fwrite($ws,$str);
//關(guān)閉文件留
fclose($ws);
//----------------------------------------------------------------------------------------------------
?>
解壓縮swf文件:
//----------------------------------------------------------------------------------------------------
//文件名
$filename = "test.swf";
//打開文件
$rs = fopen($filename,"r");
//讀取文件的數(shù)據(jù)
$str = fread($rs,filesize($filename));
//設(shè)置swf頭文件
$head = substr($str,1,8);
$head = "F".$head;
//獲取swf文件內(nèi)容
$body = substr($str,8);
//解壓縮文件內(nèi)容
$body = gzuncompress($body);
//合并文件頭和內(nèi)容
$str = $head.$body;
//關(guān)閉讀取的文件流
fclose($rs);
//創(chuàng)建一個新的文件
$ws = fopen("create.swf","w");
//寫文件
fwrite($ws,$str);
//關(guān)閉文件留
fclose($ws);
//----------------------------------------------------------------------------------------------------
?>
怎么樣?是不是很簡單?呵呵,php給我們的不止是簡單“`
//沒有加入判斷swf文件是否已經(jīng)壓縮,入需要可以根據(jù)文件的第一個字節(jié)是'F'或者'C'來判斷
壓縮swf文件:
//--------------------------------------------------------------------------------------------------
//文件名
$filename = "test.swf";
//打開文件
$rs = fopen($filename,"r");
//讀取文件的數(shù)據(jù)
$str = fread($rs,filesize($filename));
//設(shè)置swf頭文件
$head = substr($str,1,8);
$head = "C".$head;
//獲取swf文件內(nèi)容
$body = substr($str,8);
//壓縮文件內(nèi)容,使用最高壓縮級別9
$body = gzcompress($body, 9);
//合并文件頭和內(nèi)容
$str = $head.$body;
//關(guān)閉讀取的文件流
fclose($rs);
//創(chuàng)建一個新的文件
$ws = fopen("create.swf","w");
//寫文件
fwrite($ws,$str);
//關(guān)閉文件留
fclose($ws);
//----------------------------------------------------------------------------------------------------
?>
解壓縮swf文件:
//----------------------------------------------------------------------------------------------------
//文件名
$filename = "test.swf";
//打開文件
$rs = fopen($filename,"r");
//讀取文件的數(shù)據(jù)
$str = fread($rs,filesize($filename));
//設(shè)置swf頭文件
$head = substr($str,1,8);
$head = "F".$head;
//獲取swf文件內(nèi)容
$body = substr($str,8);
//解壓縮文件內(nèi)容
$body = gzuncompress($body);
//合并文件頭和內(nèi)容
$str = $head.$body;
//關(guān)閉讀取的文件流
fclose($rs);
//創(chuàng)建一個新的文件
$ws = fopen("create.swf","w");
//寫文件
fwrite($ws,$str);
//關(guān)閉文件留
fclose($ws);
//----------------------------------------------------------------------------------------------------
?>
怎么樣?是不是很簡單?呵呵,php給我們的不止是簡單“`
相關(guān)文章
PHP和JAVA中的重載(overload)和覆蓋(override) 介紹
PHP不支持方法和操作符重載。JAVA不支持操作符的重載(但是“+”實(shí)際上是一種操作符重載)2012-03-03
PHP數(shù)據(jù)對象PDO操作技巧小結(jié)
這篇文章主要介紹了PHP數(shù)據(jù)對象PDO操作方法,結(jié)合實(shí)例形式總結(jié)分析了php基于pdo的各種常見數(shù)據(jù)庫操作相關(guān)技巧與注意事項(xiàng),需要的朋友可以參考下2016-09-09
無法載入 mcrypt 擴(kuò)展,請檢查 PHP 配置終極解決方案
今天運(yùn)行phpmyadmin的時候,提示無法載入 mcrypt 擴(kuò)展,經(jīng)排查原來是php配置問題。2011-07-07
解析thinkphp import 文件內(nèi)容變量失效的問題
本篇文章是對thinkphp import文件內(nèi)容變量失效的問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
php判斷str字符串是否是xml格式數(shù)據(jù)的方法示例
這篇文章主要介紹了php判斷str字符串是否是xml格式數(shù)據(jù)的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了php采用自定義函數(shù)針對xml格式數(shù)據(jù)進(jìn)行驗(yàn)證的相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
PHP實(shí)現(xiàn)的權(quán)重算法示例【可用于游戲根據(jù)權(quán)限來隨機(jī)物品】
這篇文章主要介紹了PHP實(shí)現(xiàn)的權(quán)重算法,可用于游戲根據(jù)權(quán)限來隨機(jī)物品,涉及php數(shù)組遍歷、隨機(jī)數(shù)處理及數(shù)值運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2019-02-02
php實(shí)現(xiàn)將base64格式圖片保存在指定目錄的方法
這篇文章主要介紹了php實(shí)現(xiàn)將base64格式圖片保存在指定目錄的方法,涉及php針對圖片文件的傳輸、判定及轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2016-10-10
PHP中使用json數(shù)據(jù)格式定義字面量對象的方法
這篇文章主要介紹了PHP中使用json數(shù)據(jù)格式定義字面量對象的方法,這是一種變通方法,使用json還可以在類中生成數(shù)組哦,需要的朋友可以參考下2014-08-08

