“或”在PHP中是什么意思?

可能重复:
PHP和/或关键字

我看到几个PHP代码使用or以我不熟悉的方式。 例如:

fopen($site,"r") or die("Unable to connect to $site");

这是否等于||

为什么你会用这个来代替try catch块? 什么会导致程序运行or die()


这是大部分,但...

“和”和“或”运算符的两种不同变体的原因是它们以不同的优先级运行。

见http://php.net/manual/en/language.operators.logical.php


or等于|| || 除外or更高。

参考:

http://www.php.net/manual/en/language.operators.precedence.php


or具有其他优先权。 具体的陈述是布尔运算符的小窍门。 就像在一个普通的if -test-expression中一样,只有第一部分被评估为false ,第二部分才会被执行。 这意味着,如果fopen()不失败, die()根本不会被触及。

然而, try-catch只能用于异常,但fopen()不会抛出任何异常。

今天这样的事情是“不太好”的风格。 使用例外而不是硬堕胎

if (!($res = fopen($site, 'r'))) throw new Exception ("Reading of $site failed");
链接地址: http://www.djcxy.com/p/57631.html

上一篇: What does "or" in php mean?

下一篇: PHP shorthand logical operators AND and OR