PHP“;或;语法语句
从另一种语言转到PHP,仍然习惯于语法 写这句话的正确方法是什么?关于逻辑运算符的手册还有待改进PHP“;或;语法语句,php,logical-operators,Php,Logical Operators,从另一种语言转到PHP,仍然习惯于语法 写这句话的正确方法是什么?关于逻辑运算符的手册还有待改进 if($var !== '5283180' or '1234567') 通常,比较是通过使用=进行的,反之亦然=。但是,如果要将值与其数据类型进行比较,则可以使用==,反之亦然== 有关更多信息,请参阅 您可以使用以下选项: if($var!='5283180' || $var!='1234567') 通常,比较是通过使用=进行的,反之亦然=。但是,如果要将值与其数据类型进行比较,则可以使用=
if($var !== '5283180' or '1234567')
通常,比较是通过使用
=
进行的,反之亦然=代码>。但是,如果要将值与其数据类型进行比较,则可以使用==
,反之亦然==代码>
有关更多信息,请参阅
您可以使用以下选项:
if($var!='5283180' || $var!='1234567')
通常,比较是通过使用
=
进行的,反之亦然=代码>。但是,如果要将值与其数据类型进行比较,则可以使用==
,反之亦然==代码>
有关更多信息,请参阅
您可以使用以下选项:
if($var!='5283180' || $var!='1234567')
试试这个
if($var != '5283180' || $var != '1234567')
试试这个
if($var != '5283180' || $var != '1234567')
在其他的基础上,正如OP所提到的,它们是PHP的新手,需要考虑以下几点 首先,您要查找的PHP
或
是双线(|
),并且每个项目必须是|
两侧的语句
if ( $var !== '5283180' || $var !== '1234567')
补充:
如报告中所述
或
运算符与|
运算符相同,但优先级要低得多。
例如给定的示例(来自手册):
如前所述,这里有一般比较(==
或“相等”)和类型比较(==
或“相同”),两者都有相反的含义(不是)。在给定的示例中,测试将检查$var
是否与值不相同
发件人:
$a!==$b |不相同|如果$a不等于$b,或者它们不是同一类型,则为真
说到这里,仔细检查一下这是你真正想要完成的。很可能您正在寻找
=代码> 在其他的基础上,正如OP提到的,它们是PHP的新手,有几件事需要考虑
首先,您要查找的PHP或
是双线(|
),并且每个项目必须是|
两侧的语句
if ( $var !== '5283180' || $var !== '1234567')
补充:
如报告中所述
或
运算符与|
运算符相同,但优先级要低得多。
例如给定的示例(来自手册):
如前所述,这里有一般比较(==
或“相等”)和类型比较(==
或“相同”),两者都有相反的含义(不是)。在给定的示例中,测试将检查$var
是否与值不相同
发件人:
$a!==$b |不相同|如果$a不等于$b,或者它们不是同一类型,则为真
说到这里,仔细检查一下这是你真正想要完成的。很可能您正在寻找=代码> PHP的或
功能与普通的|
相同,但具有较低的绑定优先级。因此,这两种说法:
$foo = ($bar != 'baz') or 'qux';
$foo = ($bar != 'baz') || 'qux';
在其他方面可能看起来是相同的,但执行顺序实际上是完全相同的
不一样。对于或
版本,其执行方式如下:
($foo = ($bar != 'baz')) or 'qux';
- inequality test is performed
- result of the test is assigned to $foo
- result of the test is ORed with the string 'qux';
对于| |
版本:
$foo = (($bar != 'baz') || 'qux');
- inquality test is performed
- result of test is ||'d with 'qux'
- result of the || is assigned to $foo.
PHP的或
功能与普通的|
相同,但具有较低的绑定优先级。因此,这两种说法:
$foo = ($bar != 'baz') or 'qux';
$foo = ($bar != 'baz') || 'qux';
在其他方面可能看起来是相同的,但执行顺序实际上是完全相同的
不一样。对于或
版本,其执行方式如下:
($foo = ($bar != 'baz')) or 'qux';
- inequality test is performed
- result of the test is assigned to $foo
- result of the test is ORed with the string 'qux';
对于| |
版本:
$foo = (($bar != 'baz') || 'qux');
- inquality test is performed
- result of test is ||'d with 'qux'
- result of the || is assigned to $foo.
@Mike,你的手册链接说要使用这个:“$d=(true或foo());”--它没有说要像下面的答案那样写两次$var。@Mike,你的手册链接说要使用这个:“$d=(true或foo());”--它没有说要像下面的答案那样写两次$var。false。PHP确实直接支持或
,但它的绑定优先级低于|
@MarcB,我在或
操作符上添加了一点。然而,OP所寻找的更多的是他的陈述应该如何书写(你甚至没有在回答中提及)错误。PHP确实直接支持或
,但它的绑定优先级低于|
@MarcB,我在或
操作符上添加了一点。然而,OP想要的更多的是他陈述的写作方式(你甚至没有在回答中提及)