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),它就可以工作了代码>