在PHP中使用布尔运算
嗯,我来自编译语言Java,现在我正试图在一些特定领域处理PHP。今天,为了知道如何检查有效值,我创建了一个“测试表单”,现在我有一个小问题 假设我有多个字段要计算,使用一个布尔变量,我想这样做:在PHP中使用布尔运算,php,boolean-operations,Php,Boolean Operations,嗯,我来自编译语言Java,现在我正试图在一些特定领域处理PHP。今天,为了知道如何检查有效值,我创建了一个“测试表单”,现在我有一个小问题 假设我有多个字段要计算,使用一个布尔变量,我想这样做: //ASSUMING THAT ALL IS CORRECT $correct = true; $correct &= is_ok($name); $correct &= is_ok($last_name); $correct &= is_ok($nickname); $c
//ASSUMING THAT ALL IS CORRECT
$correct = true;
$correct &= is_ok($name);
$correct &= is_ok($last_name);
$correct &= is_ok($nickname);
$correct &= is_ok($best_friend);
if (!$correct) {
//AT LEAST ONE FIELD IS INCOMPLETE
}
else
{
// EVERYTHING IS OK
}
function is_ok($field){
return !empty($field);
}
我提出的问题是,
&=
看起来工作不正常。是否需要使用其他布尔运算符?始终先阅读手册:
//ASSUMING THAT ALL IS CORRECT
$correct = true;
$correct = $correct && is_ok($name);
$correct = $correct && is_ok($last_name);
$correct = $correct && is_ok($nickname);
$correct = $correct && is_ok($best_friend);
您应该从教程、基本课程、基本文档开始,以避免此类问题。始终先阅读手册:
//ASSUMING THAT ALL IS CORRECT
$correct = true;
$correct = $correct && is_ok($name);
$correct = $correct && is_ok($last_name);
$correct = $correct && is_ok($nickname);
$correct = $correct && is_ok($best_friend);
您应该从教程、基础课程、基本文档开始,以避免此类问题。&是位运算符。对于bloolean使用&&,如
`$correct = $correct && is_ok($name);`
因为
echo 1 & 2
给出0是位运算符。对于bloolean使用&&,如
`$correct = $correct && is_ok($name);`
if (is_ok($name) && is_ok($last_name) && is_ok($nickname) && is_ok($best_friend)) {
echo "Good.";
} else{
echo "Bad.";
}
因为
echo 1 & 2
给0
if (is_ok($name) && is_ok($last_name) && is_ok($nickname) && is_ok($best_friend)) {
echo "Good.";
} else{
echo "Bad.";
}
或者更简单地说
if (!empty($name) && !empty($last_name) && !empty($nickname) && !empty($best_friend)) {
echo "Good.";
} else{
echo "Bad.";
}
如果你真的想按你想的方式写:
$correct = true;
$correct = $correct && is_ok($name);
$correct = $correct && is_ok($last_name);
$correct = $correct && is_ok($nickname);
$correct = $correct && is_ok($best_friend);
或者更简单地说
if (!empty($name) && !empty($last_name) && !empty($nickname) && !empty($best_friend)) {
echo "Good.";
} else{
echo "Bad.";
}
如果你真的想按你想的方式写:
$correct = true;
$correct = $correct && is_ok($name);
$correct = $correct && is_ok($last_name);
$correct = $correct && is_ok($nickname);
$correct = $correct && is_ok($best_friend);
这不是有效的PHP代码。您能发布实际的代码吗?请先阅读一些PHP教程,然后再试一次。请先查看$variables部分的入门资料。@Burnkhalid,我已经更新了文章。这是我的密码。伙计们,对不起。。所有这些都是输入错误。事实上,操作符
&=
是有效的,并且按照@manix的要求工作。请参阅:这不是有效的PHP代码。您能发布实际的代码吗?请先阅读一些PHP教程,然后再试一次。请先查看$variables部分的入门资料。@Burnkhalid,我已经更新了文章。这是我的密码。伙计们,对不起。。所有这些都是输入错误。事实上,操作符&=
是有效的,并且按照@manix的要求工作。看:嘿,有用!但是你知道吗?我试图复制“字符串短连接”,比如$string.=$foo
,但它适用于布尔人,这让我有点困惑bit@manix没关系,但是1。仍然&
不是逻辑运算符。2.为什么你们要复制一些东西而不是阅读手册?我会记住的!谢谢你和其他人的帮助。嘿,有用!但是你知道吗?我试图复制“字符串短连接”,比如$string.=$foo
,但它适用于布尔人,这让我有点困惑bit@manix没关系,但是1。仍然&
不是逻辑运算符。2.为什么你们要复制一些东西而不是阅读手册?我会记住的!谢谢你的帮助,也谢谢其他人。这太不干净了:P
也就是说,我可能只需要让是ok()
接受一个或多个变量进行测试。简单一点,最后一个就是我要找的!非常感谢你。这太不干净了:P
也就是说,我可能只需要让是ok()
接受一个或多个变量进行测试。简单一点,最后一个就是我要找的!多谢各位