Php 如何在linux主机和windows之间压缩和解压文件

Php 如何在linux主机和windows之间压缩和解压文件,php,Php,在xammp windows服务器和linux主机之间对zip文件进行压缩和解压缩时,我遇到了很多问题。 如何在windows上的xammp中压缩文件并在linux主机中解压,反之亦然?PHP具有用于压缩和解压的内置扩展: <?php $zip = new ZipArchive; $res = $zip->open('file.zip'); if ($res === TRUE) { $zip->extractTo('/myzips/extract_path/'); $z

在xammp windows服务器和linux主机之间对zip文件进行压缩和解压缩时,我遇到了很多问题。
如何在windows上的xammp中压缩文件并在linux主机中解压,反之亦然?

PHP具有用于压缩和解压的内置扩展:

<?php
$zip = new ZipArchive;
$res = $zip->open('file.zip');
if ($res === TRUE) {
  $zip->extractTo('/myzips/extract_path/');
  $zip->close();
  echo 'woot!';
} else {
  echo 'doh!';
}
?>
我会推荐它对平台进行抽象并做得很好,顺便说一句,它支持几种压缩方法,请看一看

存档列表和提取:

档案创建


,是的,我知道,但当您在windows中从xammp生成zip文件时,它在linux主机中不正确,因为该zip文件中包含文件夹。您的zip文件将在项目发布后在linux主机中压缩。所以别麻烦了。我来这里是因为炼金术\Zippy在Windows上对我无效。它在Windows上对你有用吗?我还没有在Windows上测试过它,但如果它只在Windows上失败,我会感到惊讶。你可以做的事情可能很少:1。我建议您检查路径配置2。检查错误日志并了解问题所在
use Alchemy\Zippy\Zippy;

$zippy = Zippy::load();
$zippy->create('archive.zip', '/path/to/folder');

$archive = $zippy->open('build.tar');

// extract content to `/tmp`
$archive->extract('/tmp');

// iterates through members
foreach ($archive as $member) {
    echo "archive contains $member \n";
}
use Alchemy\Zippy\Zippy;

$zippy = Zippy::load();
// creates an archive.zip that contains a directory "folder" that contains
// files contained in "/path/to/directory" recursively
$archive = $zippy->create('archive.zip', array(
    'folder' => '/path/to/directory'
), recursive = true);