Laravel SSH - 将输出推送到阵列

时间:2016-02-14 17:27:24

标签: php laravel-5 closures

我有以下内容:

$files = [];
$directories = [];
\SSH::run($commands, function($line)
        {
            $data = explode('-', $line.PHP_EOL);
            if ($data[0] == 'file') {
                array_push($files, $data[1]);
            } else {
                array_push($directories, $data[1]);
            }
        });

但是在ssh命令运行期间我无法访问这两个数组,我该怎么办?

1 个答案:

答案 0 :(得分:0)

您需要使用use关键字以这种方式将这些变量置于关闭状态:

\SSH::run($commands, function($line) use (&$files, &$directories)

而不是

\SSH::run($commands, function($line)