PHP-是运算符顺序LTR或RTL



如果我有一个条件语句

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"; 

最新更新