Php 在回调方法中指定一个局部变量

Php 在回调方法中指定一个局部变量,php,callback,assign,Php,Callback,Assign,我有这样一种方法: $status = null; $authority = null; SoapWrapper::service('currency', function (Service $service) use ($data, $status, $authority) { $service->call('PaymentRequest', [$data]); $status = $service->call('P

我有这样一种方法:

    $status = null;
    $authority = null;

    SoapWrapper::service('currency', function (Service $service) use ($data, $status, $authority)
    {
        $service->call('PaymentRequest', [$data]);
        $status = $service->call('PaymentRequest', [$data])->Status;
        $authority = $service->call('PaymentRequest', [$data])->Authority;
    });
    return array(['status' => $status, 'authority' => $authority]);
我要做的是在回调方法中分配
$status
$authority
。但是phpstorm在
返回数组
区域提示我,
$status
$authority
从未分配


如何在回调方法中分配局部变量?

使用
&
通过引用传递变量,例如
使用(&$test)
@Rizier123没有其他解决方案吗?这看起来有点黑。为什么要黑呢?您希望更新函数中的变量,而该变量会影响函数外部的变量,因此只需将其作为引用传递