【问题标题】:PHP Callback function return outer functionPHP回调函数返回外部函数
【发布时间】:2018-08-19 17:21:36
【问题描述】:

我有一个函数,在这个函数中我使用了一个带有回调的函数。在这个回调函数中,我想返回外部函数(isRunning)。我怎样才能做到这一点?因为现在我的回调函数中的返回只针对回调函数,而不针对 isRunning 函数。

public static function isRunning($instance){
    $commands = [
        'systemctl is-active myservice'.$instance->id
    ];

    SSH::run($commands, function ($line) {
        if($line == 'inactive'){
            return false;
        }
        return true;
    });
}

这是我的 Laravel 应用程序的代码。

【问题讨论】:

标签: php callback return


【解决方案1】:

我找到了解决办法:

public static function isRunning($instance){
    $commands = [
        'systemctl is-active myservice'.$instance->id
    ];

    $isRunning = null;
    SSH::run($commands, function ($line) use (&$isRunning) {
        if(trim($line) == 'active'){
            $isRunning = true;
        }
        elseif(trim($line) == 'inactive'){
            $isRunning = false;
        }
    });
    return $isRunning;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 1970-01-01
    • 2015-11-21
    • 1970-01-01
    相关资源
    最近更新 更多