如果我有条件陈述
if (A > B || B > C)
首先评估哪个陈述:“A> B”或“B> C”?
是否将相同的顺序应用于数学语句:
$var = $value1 + $value2 + $value3;
谢谢,
亚历克斯。
答案 0 :(得分:1)
在PHP中,除非使用括号,否则将从左到右计算脚本,如果使用括号,则按逻辑顺序使用它。另外请记住,if条件块(包括评估程序)中的代码没有超过第一个失败的语句。此示例仅执行第二个回声$ a,它的值将为0
$a = 0;
if(1 == 0 && $a = 5)
{
echo $a;
}
echo $a;
此语句的$值为5,将执行该语句。有趣的是,代码执行的原因是因为if a中的$ a = 5赋值$ a = 5或" 5 = 5"。
if(1 == 1 && $a = 5)
{
echo $a;
}
另请注意,如果你还没有调查,还有其他if语句
$a =2
if($a == 2)
{
}
else if($a > 2){
echo ">".$a;
}
else{
echo "its none of the conditions";
}
使用两个等号的原因是比较值类型不敏感和一个等于赋值的值。还有三个等于比较类型和值的例子。这将评估为真:
$a = 2;
if($a == "2")
以下情况不正确,因为您正在将字符串与整数进行比较。
$a = 2;
if($a === "2")
关于第二个问题,String运算符也是如此,但语法是INVALID。
这个例子会说Hellow World:
echo "hellow"."world";
这个例子没有做连接(虽然如果它们是整数就会做加法)
echo "hellow" + "world";