clue/shell-react

在任意交互式shell命令中运行异步命令,基于ReactPHP构建。

v0.2.0 2015-06-17 17:12 UTC

This package is auto-updated.

Last update: 2024-09-11 11:26:15 UTC


README

CI status installs on Packagist

在基于 ReactPHP 的任意交互式shell命令中运行异步命令。

注意:此项目处于测试阶段!欢迎报告您遇到的问题。

快速入门示例

安装完成后,您可以使用以下代码运行交互式bash shell并在其中执行一些命令:

<?php

require __DIR__ . '/vendor/autoload.php';

$launcher = new Clue\React\Shell\ProcessLauncher();

$shell = $launcher->createDeferredShell('bash');

$shell->execute('echo -n $USER')->then(function ($result) {
    var_dump('current user', $result);
}, function (Exception $e) {
    echo 'Error: ' . $e->getMessage() . PHP_EOL;
});

$shell->execute('env | sort | head -n10')->then(function ($env) {
    var_dump('env', $env);
}, function (Exception $e) {
    echo 'Error: ' . $e->getMessage() . PHP_EOL;
});

$shell->end();

另请参阅 示例

安装

推荐通过 Composer 安装此库。 Composer 初学者?

这将安装最新支持的版本

composer require clue/shell-react:^0.2

有关版本升级的详细信息,请参阅 变更日志

此项目旨在在任何平台上运行,因此不需要任何PHP扩展,并支持从旧版PHP 5.3到当前PHP 8+的运行。强烈建议使用此项目支持的最新PHP版本。

测试

要运行测试套件,您首先需要克隆此仓库,然后通过 Composer 安装所有依赖项

composer install

要运行测试套件,请转到项目根目录并运行

vendor/bin/phpunit

许可协议

MIT