sivka / 文件系统

v1.0.2 2019-02-25 06:21 UTC

This package is auto-updated.

Last update: 2024-09-25 07:48:36 UTC


README

真正的文件系统抽象层。以前从未如此轻松地与文件系统一起工作。

功能

  • 简单的API
  • 将文件系统实体作为模型对象
  • 可通过适配器扩展
  • 通过一条命令在文件系统之间复制、移动文件和文件夹
  • 支持符号链接(win/unix)
  • 更多...

安装

composer require sivka/filesystem

如果您无法使用Composer,请下载最新版本,将其解压到您的项目中的某个位置,并从filestem-[version]文件夹中包含Autoload.php。

要求

  • PHP 5.6.0+

示例

use Sivka\Filesystem as FS;
use Sivka\Filesystem\Adapter\Ftp;

$fs = new FS(); // used local adapter by default

$fs->directory('my-folder')
    ->copyTo('all-folders')
    ->rename('new-folder');

$fs->file('my-folder/1.txt')
    ->moveTo('new-folder')
    ->write('new-text')
    ->append('more text');

// between filesystems

// for local may be used short call
$localDir = FS::get('all-folders/new-folder');

$ftpAdapter = new Ftp([
    'host' => '127.0.0.1',
    'username' => 'user',
    'password' => 'pass',
]);

$ftpFs = new FS($ftpAdapter);

$fptDir = $ftpFs->get('ftp-folder');

$localDir->copyTo($ftpDir, 0744)
        ->createFile('ftp-file.txt', 0644)
        ->write("hello I'm on remote.")
        ->moveTo($localDir)
        ->append("Now I'm in local");

完整文档请在此阅读

许可

本项目受MIT许可证许可。