graze / data-flow

促进系统间数据的移动

v0.2 2018-10-03 12:08 UTC

This package is auto-updated.

Last update: 2024-09-24 04:10:00 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

Flow 是一系列定义明确的单个步骤,每个步骤都会修改一些数据,这些数据随后被传递到流程中的下一个步骤。

详细信息

  • 例如,使用 f::moveFiles($targetDir)->each(f::gzip())->moveFiles($ftpDir)->flow($files)
    • 从远程位置传输文件,使用 gzip 压缩并传输到另一个位置
  • 如何流动
  • 与 PHP 5.6、PHP 7 和 HHVM 兼容
  • 注意 使用一些符合 Ubuntu 语法的命令行程序。

命令

通用

  • run - 遍历一系列流程
  • toAll - 同时将相同的输入发送到每个流程
  • first - 从集合中获取第一个节点
  • last - 从集合中获取最后一个节点
  • filter - 从集合中过滤节点
  • map - 将函数应用于集合中的每个节点
  • each - 将 FlowInterface 应用到集合中的每个节点
  • callback - 对节点应用回调

文件

  • makeDirectory - 从文件节点创建目录
  • merge - 将文件集合合并到文件中
  • compress - 压缩文件
  • decompress - 解压缩文件
  • gzip - 使用 gzip 压缩文件
  • gunzip - 使用 gunzip 解压缩文件
  • zip - Zip 文件
  • unzip - Unzip 文件
  • copyFile - 将文件复制到新位置
  • copyFiles - 将文件集合复制到新位置
  • moveFile - 将文件移动到新位置
  • moveFiles - 将文件集合移动到新位置
  • convertEncoding - 转换文件的编码
  • replaceText - 替换文件中的文本
  • tail - 获取文件最后 n 行
  • head - 获取文件前 n 行

安装

通过 Composer

$ composer require graze/data-flow

测试

DataFlow 使用 PHPUnit 测试套件,并通过 Docker 🐳 运行。要运行测试,请执行以下命令

$ make test

贡献

请参阅 CONTRIBUTING 以获取详细信息。

变更日志

请参阅 CHANGELOG 以获取有关最近更改的更多信息。

安全性

如果您发现任何与安全相关的问题,请通过电子邮件 security@graze.com 反馈,而不是使用问题跟踪器。

致谢

许可

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