Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 其他函数的Laravel访问变量_Php_Laravel_Api_Laravel 5.4_One Time Password - Fatal编程技术网

Php 其他函数的Laravel访问变量

Php 其他函数的Laravel访问变量,php,laravel,api,laravel-5.4,one-time-password,Php,Laravel,Api,Laravel 5.4,One Time Password,我有一个sendOtp()方法,我必须使用该方法将otp发送给用户,以便在changePassword()方法中更改密码 public function sendOtp($user_phone_number) { $otp = mt_rand(100000, 999999); //sms login $data = [ 'data' => [ 'otp' => $otp ] ];

我有一个
sendOtp()
方法,我必须使用该方法将
otp
发送给用户,以便在
changePassword()
方法中更改密码

public function sendOtp($user_phone_number)
{
    $otp = mt_rand(100000, 999999); 

    //sms login

    $data = [
        'data' => [
            'otp' => $otp
        ]
    ];

    return Response::json(
        $data_with_status = array_merge($this->respondSuccess('otp sent'), $data)
    );
}
public function changePasswordOtp($user_phone_number)
{
    $user = User::where('phone_number', '=', $user_phone_number)->count();

    if($user > 0) {

        $this->sendOtp($user_phone_number); 

        //return response with sent otp
    }
    else {

        return Response::json(
            $this->respondFailure('User not found')
        );

    }
}
我想将
$otp
sendOtp()
返回到
changePassword()

sendOtp
方法

public function sendOtp($user_phone_number)
{
    $otp = mt_rand(100000, 999999); 

    //sms login

    $data = [
        'data' => [
            'otp' => $otp
        ]
    ];

    return Response::json(
        $data_with_status = array_merge($this->respondSuccess('otp sent'), $data)
    );
}
public function changePasswordOtp($user_phone_number)
{
    $user = User::where('phone_number', '=', $user_phone_number)->count();

    if($user > 0) {

        $this->sendOtp($user_phone_number); 

        //return response with sent otp
    }
    else {

        return Response::json(
            $this->respondFailure('User not found')
        );

    }
}
changePassword()
方法

public function sendOtp($user_phone_number)
{
    $otp = mt_rand(100000, 999999); 

    //sms login

    $data = [
        'data' => [
            'otp' => $otp
        ]
    ];

    return Response::json(
        $data_with_status = array_merge($this->respondSuccess('otp sent'), $data)
    );
}
public function changePasswordOtp($user_phone_number)
{
    $user = User::where('phone_number', '=', $user_phone_number)->count();

    if($user > 0) {

        $this->sendOtp($user_phone_number); 

        //return response with sent otp
    }
    else {

        return Response::json(
            $this->respondFailure('User not found')
        );

    }
}

谢谢

更改您的
sendOtp
如下:

public function sendOtp($user_phone_number)
{
    $otp = mt_rand(100000, 999999); 

    //sms login

    $data = [
        'data' => [
            'otp' => $otp
        ]
    ];
    $responseMessage= $this->respondSuccess();
    $responseArray = array_merge(responseMessage, data);
    return Response::json($responseArray); 
    );
}

您可以通过以下代码接收
otp

public function changePasswordOtp($user_phone_number)
{
    $user = User::where('phone_number', '=', $user_phone_number)->count();

    if($user > 0) {

        $result_otp = $this->sendOtp($user_phone_number); 
         $result_otp = json_decode($result_otp ,true);

        $otp = $result_otp['data']['otp']; //return response with sent otp
    }
    else {

        return Response::json(
            $this->respondFailure('User not found')
        );

    }
}

什么是错误?@pinoyCoder谢谢您的时间,我没有从
sendOtp()
方法中得到任何响应,但该方法是executing@pinoyCode我想从
sendOtp()
访问
$otp
,并通过
changePAssword()
方法将其返回给用户(应用程序的api)要匹配奇怪的
otp
,请检查web浏览器的开发者控制台,是否使用ajax发送请求?
$result\u otp=$this->sendOtp($user\u phone\u number);echo$result\u otp;死亡并查看打印内容感谢您的时间,如果我只
返回$this->sendOtp($user\u phone\u number),它就可以工作了