intellex / filesystem
v1.2.2
2022-06-20 17:10 UTC
Requires
- ralouphie/mimey: ^1.0
Requires (Dev)
Suggests
- ext-fileinfo: Provides more reliable mime type reading
README
- 完整的抽象层。
- 支持文件和目录。
- 轻松读取、写入和搜索文件和目录。
- 所有问题都转换为单独的异常,以便简单处理。
示例
初始化
<?php $file = new File('echo.txt'); $dir = new Dir('bucket');
基本操作适用于文件和目录
<?php $file->exists(); $file->isReadable(); $file->isWritable(); $file->touch(); $file->delete(); $path = $file->getPath(); $path = "{$file}";
文件读写
<?php $content = $file->read(); $file->write('overwrite content'); $file->write('append to existing content', true);
将文件移动到目录、另一个文件或字符串路径
<?php $file->moveTo($dir); $file->moveTo(new File('rename.txt')); $file->moveTo('rename.txt');
将文件复制到目录、另一个文件或字符串路径
<?php $file->copyTo($dir); $file->copyTo(new File('file-copy.txt')); $file->copyTo('file-copy.txt');
列出目录内容,使用glob模式
<?php $dir->listDirectory(); $dir->listDirectory('*.txt');
递归查找目录,使用glob模式
<?php $dir->find('*.xml');
测试
转到'tests'目录并运行
./run-tests
如果没有错误,脚本将静默退出,返回代码0。
如果出现任何错误,错误将被打印出来,脚本将以非零退出代码结束。
待办事项
- 目录的移动和复制
许可证
MIT许可证
版权(c)2019 Intellex
特此授予任何获得本软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许获得软件的人使用软件,但受以下条件的约束
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何形式的保证,无论是明示的还是暗示的,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权持有人不对任何索赔、损害或其他责任承担任何责任,无论这些责任是因合同、侵权或其他原因而产生的,无论是在软件或软件的使用或其它方式中产生的。
致谢
脚本由Intellex团队编写。