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);
//swf ファイルの内容を取得します
$body = substr($str,8 );
//ファイルの内容を解凍します
$body = gzuncompress($body);
//ファイルのヘッダーとcontent
$str = $head.$body;
// 読み取りファイル ストリームを閉じる
fclose($rs)
// 新しいファイルを作成します
$ws = fopen(" create.swf","w");
//ファイルを書き込みます
fwrite($ws,$str);
//ファイルを閉じてそのままにしておきます
fclose($ws);
//------------------------------------------- ------------------ -------------------------------- ---
?>
はどうでしょうか?