我有一堆用LZMA压缩的SWF文件,我想在我的服务器上以编程方式解压缩和读取PHP。 有人可以指导我使用PHP LZMA SDK吗?我已经用谷歌搜索了它,但到目前为止只发现了一个断开的链接(7z extension for php?)
我有一个工作的python模块,它设法读取LZMA压缩SWF的标题,但它需要一个名为pyLZMA的模块,它似乎不想在我的服务器上安装,并让它在本地工作是一个巨大的痛苦如果有的话,我更喜欢PHP解决方案。
答案 0 :(得分:2)
有一个名为PHP-SevenZipArchive的库,它是7za和7zr二进制文件的包装器。在linux中为我工作的简单测试场景:
安装p7zip包(yum install p7zip
或类似的)
在linux shell中创建测试压缩文件
echo "Compressed data" | lzma -z > compressed.string
下载并解压PHP-SevenZipArchive
wget https://github.com/cmanley/PHP-SevenZipArchive/archive/master.zip
unzip master.zip
为解压缩输出创建目录
mkdir out
创建测试php文件
<?php
require "./PHP-SevenZipArchive-master/SevenZipArchive.php";
$archive = new SevenZipArchive('compressed.string', array('binary'=>'/usr/bin/7za'));
$archive->extractTo('out');
?>
php -f ./index.php
将创建文件输出/压缩
cat out/compressed
压缩数据
注意:我之前的回答被版主删除,因为它的质量很差,尽管我已经获得了良好的声誉。所以我以详细的方式完全重写了它。希望这会有所帮助。