ホームページ >バックエンド開発 >PHPチュートリアル >単純な if 形式に関する問題のトラブル

単純な if 形式に関する問題のトラブル

WBOY
WBOYオリジナル
2016-06-13 12:56:52844ブラウズ

単純な if 形式の問題による問題
フォーム検証と同様に、一部のステートメントではユーザー名、電子メール、パスワードなどを決定するために常に多くの if が必要です。

js
で検証する場合の関数を書く 関数 check(){

if(ユーザー名!=''){

If(メール!=''){
if (パスワード!=''){
true を返します;
}
}
                                                                    }
false を返します;

}

特に if 内のコンテンツがページの範囲を超えている場合、レイヤーが多すぎて見栄えがよくないように感じます。
それでこれに変更されました。

関数 check(){
if(ユーザー名!=''){
return false;
}
if(メール!=''){
return false;
}
if(パスワード!=''){
return false;
}
true を返します;
}

これは、特に if が多い場合には明らかです。判定の数だけreturn falseを書くだけです。
貴重なご意見を賜りまして誠にありがとうございます。



-----解決策---------
function check(){<br />
$error = 0;<br />
   if(用户名==''){<br />
       $error=1;<br />
    }<br />
   if(邮箱==''){<br />
       $error=2;<br />
    }<br />
   if(密码==''){<br />
       $error=3;<br />
    }<br />
    return $error;<br />
}

できることはこれだけです。判断に役立つエラー コードを返してください

-----解決策---------検証するものはすべてクラス メソッドとして記述し、チェーン構文を使用して検証できます。


class check_rule{<br />
	<br />
	public function check_nickname($name){<br />
		<br />
		if(true){<br />
			return $this;<br />
		}<br />
		<br />
		die('用户名不符合规则');<br />
	}<br />
	<br />
	public function check_email($email){<br />
		<br />
		if(true){<br />
			return $this;<br />
		}<br />
		<br />
		die('email不符合规则');<br />
	}<br />
	<br />
	public function check_password($password){<br />
		<br />
		if(true){<br />
			return $this;<br />
		}<br />
		<br />
		die('密码不正确');<br />
	}<br />
}<br />
<br />
$check = new check_rule();<br />
<br />
$check->check_nickname($name)<br />
		->check_email($email)<br />
		->check_password($password);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。