Laravel SSH - 将输出推送到数组


Laravel SSH - push output to an array

>我有以下内容:

$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 命令运行时期间我无法访问这两个数组,我该怎么办?

你需要

使用 use 关键字以这种方式将这些变量放入闭包中:

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

而不是

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