[英]PHP - IF statement
function IsEmailRegistered($Email){
global $con;
$result = mysqli_query($con,"SELECT email FROM Users WHERE email = '" . $Email . "'");
if (mysqli_num_rows($result) > 0){
return True;
}else{
return False;
};
};
这是一个检查电子邮件是否已注册的函数,如果该电子邮件已注册,则该函数返回1,如果未注册,则不返回任何内容(而不是0)。 我在这里想念的是什么?
如果结果为1和0,则表示正在回显。 您的代码可能正确,只是误解了
echo true; // screen will say 1
echo false; // screen will say 0
var_dump($var); // this will give you the value (true) and its type (boolean)
这总是返回true或false。 还为您的查询添加了一个限制 ,您只需点击1次即可对其进行检查。 如果您需要确切数量的行,请指定它。 例如,当您需要1行时,请使用LIMIT 1
。 当您的站点增长时,这将节省宝贵的资源。
在这里,您可以优化功能(IMO)
function IsEmailRegistered($Email){
global $con;
$result = mysqli_query($con,"SELECT email FROM Users WHERE email = '".$Email."' LIMIT 1");
return mysqli_num_rows($result)===1; // this function will return true/false
}
如果要坚持使用if / else,则可以使用三进制,下面的代码将执行与代码完全相同的操作:
return mysqli_num_rows($result) > 0 ? true : false;
我将true / false更改为小写,为了保持一致性,始终将它们小写。 您可能会遇到这样的情况,您必须发送“ true”或“ false”,您不想因为使用大写字母而浪费时间在不起作用的东西上:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.