如果我有一个条件语句
if (A > B || B > C)
哪个语句将首先被评估:"A>B"还是"B>C"?
是否将相同的顺序应用于数学语句:
$var = $value1 + $value2 + $value3;
谢谢亚历克斯。
在PHP中,除非使用括号,否则脚本将从左到右求值,如果使用括号,则按逻辑顺序求值。此外,请记住,if条件块(包括求值器)中没有任何代码在第一个失败语句之后运行。此示例将只执行第二个回波$a,其值将为0
$a = 0;
if(1 == 0 && $a = 5)
{
echo $a;
}
echo $a;
该语句的$值为5,并将执行该语句。有趣的是,代码之所以会执行,是因为if中的$a=5赋值设置了$a=5或"5=5"。
if(1 == 1 && $a = 5)
{
echo $a;
}
还要注意,如果你没有研究过,还有else和else-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")
关于第二个问题,字符串运算符也是如此,但您的语法是无效的。
这个例子会说Hello World:
echo "hellow"."world";
这个例子不做CONCATENATION(尽管如果它们是整数,它会做加法)
echo "hellow" + "world";