首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ZipArchive中设置权限

在ZipArchive中设置权限
EN

Stack Overflow用户
提问于 2011-12-14 01:24:44
回答 1查看 3.3K关注 0票数 6

我有个Zip文件。我用ZipArchive php库打开它,在里面添加了一个目录和一个文件。当我用ubuntu的默认解压工具解压它时,一切都像预期的一样。但是当我在OS X Snow Leopard (使用默认的Keka和unarchiver尝试)上解压它时,新目录的权限是700。预期权限为755。

所以,这是原始的压缩包:

代码语言:javascript
复制
DIRECTORY
a.txt
b.txt

下面是我的代码:

代码语言:javascript
复制
<?php
$file = 'example.zip';
$zip = new ZipArchive;
$res = $zip->open($file, ZipArchive::CREATE);
  if ($res === TRUE) {

    $zip->addEmptyDir('DIRECTORY/NEW_DIR');
    $zip->addFromString('DIRECTORY/NEW_DIR/c.txt', 'hellooo');
    $zip->close();
  }
  else {
    print 'error';
  }

结果是:

代码语言:javascript
复制
DIRECTORY -> NEW_DIR -> c.txt
a.txt
b.txt

这是正确的,但如果我在osx下解压,NEW_DIR目录的权限是700 (drwx-)而不是755。如何修复它?

谢谢!

编辑:

以下是有关我的zip中文件的zipinfo:

代码语言:javascript
复制
$ zipinfo -l test.zip 
(..)
drwxr-xr-x  3.0 unx        0 bx        0 stor 13-Dec-11 17:43 DIRECTORY/
-rw-r--r--  3.0 unx      533 tx      327 defN  3-Nov-11 01:50 a.txt
-rw-r--r--  3.0 unx    91669 tx    32044 defN  3-Nov-11 01:09 b.txt
-rw----     0.0 fat        0 b-        2 defN 13-Dec-11 18:12 DIRECTORY/new_dir/
-rw----     0.0 fat        7 b-        9 defN 14-Dec-11 10:30 DIRECTORY/new_dir/c.txt
EN

回答 1

Stack Overflow用户

发布于 2011-12-14 01:33:33

如果您拥有必要的安全特权,则可以执行以下操作

代码语言:javascript
复制
<?php
    exec("chmod -R 755 /directory/new_dir");
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8493423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档