首頁 >後端開發 >php教程 >php在線壓縮與解壓縮SWF檔的程式碼(修正版)

php在線壓縮與解壓縮SWF檔的程式碼(修正版)

WBOY
WBOY原創
2016-07-25 08:55:07977瀏覽
  1. //-----------------
  2. //文件名
  3. $filename = "test.swf";
  4. //打开文件
  5. $rs = fopen($filename, "r");
  6. //读取文件的数据
  7. $str = fread($rs, filesize($filename));
  8. //设置swf头文件
  9. $head = substr($str, 0, 8);
  10. $head[0] = 'F';
  11. //获取swf文件内容
  12. $body = substr($str, 8);
  13. //压缩文件内容,使用最高压缩级别9
  14. $body = gzcompress($body, 9);
  15. //合并文件头和内容
  16. $str = $head . $body;
  17. //关闭读取的文件流
  18. fclose($rs);
  19. //创建一个新的文件
  20. $ws = fopen("create.swf", "w");
  21. //写文件
  22. fwrite($ws, $str);
  23. //关闭文件留
  24. fclose($ws);
  25. //-------------------
  26. ?>
复制代码

2,在线解压缩swf文件

  1. //-------------------
  2. //文件名
  3. $filename = "1000109.swf";
  4. //打开文件
  5. $rs = fopen($filename, "r");
  6. //读取文件的数据
  7. $str = fread($rs, filesize($filename));
  8. //设置swf头文件
  9. $head = substr($str, 0, 8);
  10. //$head = 'F' . $head;
  11. $head[0] = 'F';
  12. /*$head[1] = ('W');
  13. $head[2] = ('S');
  14. //$head[3] = version;
  15. $head[4] = ($str % 256);
  16. $head[5] = ($str / 256 % 256);
  17. $head[6] = ($str / 256 / 256 % 256);
  18. $head[7] = ($str / 256 / 256 / 256 % 256);*/
  19. //获取swf文件内容
  20. $body = substr($str, 8);
  21. //解压缩文件内容
  22. $body = gzuncompress($body);
  23. //合并文件头和内容
  24. $str = $head . $body;
  25. //关闭读取的文件流
  26. fclose($rs);
  27. //创建一个新的文件
  28. $ws = fopen("create.swf", "w");
  29. //写文件
  30. fwrite($ws, $str);
  31. //关闭文件留
  32. fclose($ws);
  33. //-------------------
  34. ?>
复制代码


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn