下面是我寫的壓縮和結壓縮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);
//----------------------------------------------------------------------------------------------------
?>