我需要允许用户通过网络表单上传zip文件.服务器正在运行带有Apache Web服务器的
Linux.使用像
Archive::Zip这样的模块来提取此存档是否有优势,或者我应该只执行系统调用以使用反引号解压缩?
解决方法
根据
Archive::Zip documentation你最好使用
Archive::Extract:
If you are just going to be extracting zips (and/or other archives) you are recommended to look at using Archive::Extract instead,as it is much easier to use and factors out archive-specific functionality.
这很有趣因为Archive::Extract will try Archive::Zip first and then fall back to the unzip
binary if it fails.所以看起来Archive :: Zip似乎是首选.
Archive :: Zip使用Compress::Raw::Zlib,它是zlib系统库的低级接口;所以它不是纯粹的Perl实现,这意味着它在性能上与解压缩相似.换句话说,从性能角度来看,没有理由在Archive :: Zip之前选择解压缩.