valdeirpsr/fuel-zip

ZIP 文件管理器

安装: 32

依赖项: 0

建议者: 0

安全: 0

星星: 0

观察者: 2

分支: 0

开放问题: 0

类型:fuel-package

0.0.1 2016-04-24 23:09 UTC

This package is auto-updated.

Last update: 2024-09-14 03:53:39 UTC


README

安装

通过 Composer

{
    "require": {
        "valdeirpsr/fuel-zip": "dev-master"
    }
}

通过 Composer (命令行)

composer require valdeirpsr/fuel-zip

配置

return [
  'default' => [
    'comment' => 'Created ' . date('c'),
    'password' => null,
    'save_to' => null,
    'password_generator' => [
      'enabled' => false,
      'length' => 8,
      'type' => 'alnum'
    ]
  ]
];

翻译

return [
    'error_0' => 'No error',
	'error_1' => 'Multi-disk zip archives not supported',
	'error_2' => 'Renaming temporary file failed',
	'error_3' => 'Closing zip archive failed',
	'error_4' => 'Seek error',
	'error_5' => 'Read error',
	'error_6' => 'Write error',
	'error_7' => 'CRC error',
	'error_8' => 'Containing zip archive was closed',
	'error_9' => 'No such file',
	'error_10' => 'File already exists',
	'error_11' => 'Can\'t open file',
	'error_12' => 'Failure to create temporary file',
	'error_13' => 'Zlib error',
	'error_14' => 'Malloc failure',
	'error_15' => 'Entry has been changed',
	'error_16' => 'Compression method not supported',
	'error_17' => 'Premature EOF',
	'error_18' => 'Invalid argument',
	'error_19' => 'Not a zip archive',
	'error_20' => 'Internal error',
	'error_21' => 'Zip archive inconsistent',
	'error_22' => 'Can\'t remove file',
	'error_23' => 'Entry has been deleted',
	'error_should_be_number' => 'A non well formed numeric value encountered',
	'error_method_unsupported' => 'Method \':method\' unsupported',
	'error_opsys_unsupported' => 'Operaciocnal System \':opsys\' unsupported',
	'error_flags_unsupported' => 'Flag unsupported',
	'error_name_required' => 'New name is required!',
];

用法

Zip\Zip::forge();
Zip\Zip::open("teste.zip", Zip\Zip::CREATE);
Zip\Zip::addEmptyDir("new_folder");
Zip\Zip::addFile("index.php");
Zip\Zip::addFile("favicon.ico");
Zip\Zip::addDir(DOCROOT."files");
Zip\Zip::save();

// Or
$zip = new Zip\Zip;
$zip->open("teste2.zip", Zip\Zip::CREATE);
$zip->addEmptyDir("new_folder");
$zip->addFile("index.php");
$zip->addFile("favicon.ico");
$zip->addDir(DOCROOT."files");
$zip->save();

在 ZIP 文件中创建目录

$zip->createDir([
  'one',
  'two'
]);
$zip->createDir('three');

在 ZIP 文件中创建文件

$zip->createFile([
  'pass.pwd' => 'File content',
  'error_log.txt' => 'No error'
]);

$zip->createFile('music.txt', 'Na alegria, na tristeza, sempre lado a lado
Com carinho ensinou meus primeiro passos
Mais uma guerreira de pele escura, sofredora
Tenho muito orgulho de minha coroa
Sua garra, seu jeito simples de ser
Essas qualidades são exemplo pra viver
Seus conselhos foram forças pra nunca desistir
Muito obrigado por você existir

Link: http://www.vagalume.com.br/509-e/rainha-do-lar.html');

删除文件

// By Index
$zip->delete(1);

// By Filename
$zip->delete([
  'music.txt',
  'file2.txt
]);

重命名文件

// Old Name, New Name
$zip->rename('error_log.txt', 'no_error.txt');

$zip->rename([
  'music.txt' => 'Rainha do Lar - 509-E.txt' // Old Name => New Name
]);

描述文件

// Index, Description
$zip->setComment(1, 'First comment');

$zip->setComment([
  'Rainha do Lar - 509-E.txt' => 'Brazilian rap' //Filename => Description
]);

// Comment the zip
$zip->setArchiveComment("new comment");

添加目录

$zip->addDir(DOCROOT."files/music");

// Or
$zip->addDir([
  DOCROOT."files/music",
  DOCROOT."files/photo",
  DOCROOT."files/videos"
]);

// Or with filter
$zip->addDir([
  DOCROOT."files/music",
  DOCROOT."files/photo",
  DOCROOT."files/videos"
], 0, [
  '!^\.', // no hidden files/dirs
  '!^private' => 'dir', // no private dirs
  '\.png$' => 'file', // only get png's
  '\.css$' => 'file', // or css files
  '!^_', // exclude everything that starts with an underscore.
]);

添加文件

$zip->addFile(DOCROOT."music1.mp3");
$zip->addFile(DOCROOT."music2.mp3");
$zip->addFile(DOCROOT."music3.mp3");

// Or
$zip->addFile([
  DOCROOT."music1.mp3",
  DOCROOT."music2.mp3" => "new_dir",
  DOCROOT."music3.mp3" => "new_dir/music"
]);

设置压缩

$zip->setCompression("my_file.txt", Zip\Zip::CM_DEFLATE);

所有 ZIP 文件的列表

// All files
$zip->listFiles();

// Filter files in the directory music/
$zip->listFiles("music/");

// Filter files in the directory music/ and image/
$zip->listFiles([
  "music",
  "image"
]);

打开文件

$zip->open("psr.zip", Zip\Zip::CREATE);

保存文件更改

$zip->save();

提取

$zip->extract(DOCROOT."extracted");

鸣谢

许可证

MIT 许可证 (MIT)。更多信息请参阅许可证文件