タイトルが示すように、メソッドの 1 つに多くの条件ステートメントがあります。そのうちのreturn FALSE
2つの条件で、2つに固執しています。
私は MVC を使用しているので、コントローラーでメソッドが TRUE を返すかどうかを確認します。
if ($this -> m_homepage -> reset_pw($step = 1, $value)) { // If all is true in method redirect
$this -> session -> set_flashdata('message', 'A Message Was Sent');
redirect('c_homepage/index', 'location');
} elseif ($this -> m_homepage -> reset_pw($step = 1, $value) == 'badcap') { // If captcha fails return bad_recaptcha
var_dump("bad_recaptcha");
} else { // if any other FALSE happens (only one more left) then that means account is locked
var_dump("account is locked");
}
そして私の方法では:
if (!$cap -> is_valid) {// If reCaptcha not valid
return 'badcap';
} else {// If reCaptcha is valid
if ($lockedaccount == '1') {// If account is locked (1)
return FALSE; // No email should be sent period.
} else {
if ($no_employee) {// email does not exist then
................ // Set up email body and what not
if ($email_sent() { // If email is sent
$this -> session -> unset_userdata('email');
return TRUE;
}
}
}
}
したがって、私のメソッドでは、FALSE ステートメントと、文字列を返すステートメントがあることに注意してください。コントローラでどちらが返されたかを区別するにはどうすればよいですか?
私はこのようなことを考えました:
if ($this -> m_homepage -> reset_pw($step = 1, $value) == 'badcap') {
// This will allow me to execute code is the recaptcha (badcap) is returned
}
ここでの私の論理は間違っていますか? どんな助けでも素晴らしいでしょう。
編集 1
var_dump($this -> m_homepage -> reset_pw($step = 1, $value));
私にバッドキャップを与えます