“或”在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