美文网首页
PHP运算符一网打尽

PHP运算符一网打尽

作者: 铁匠简记 | 来源:发表于2019-04-22 23:00 被阅读0次

    foo()函数和@ foo()的区别是什么?
    PHP支持一个错误运算符@,当将其放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉。
    一、运算符优先级
    递增/递减 > ! > 算数运算符 > 大小比较 > (不)相等比较 > 引用 > 位运算符(^) > 位运算符(|) > 逻辑与 > 逻辑或 > 三目 > 赋值 > and > xor > or
    递增递减运算符
    递增递减运算符不影响布尔值;
    递减null值没有效果
    递增null值为1;
    递增递减在前就是先运算,后返回;在后就是先返回,后运算

    二、逻辑运算符
    短路作用

    $a = true || $b ==3;
    $a = false && $b == 1;
    

    || 和 && 与 or 和and 的优先级不同;

    优先级:'&&'  〉 '||'  〉 '='  〉 'and'  〉 'or'
    如:
    $a = false || true;  //true
    $a = false or true;  // false
    

    三、一网打尽

    <?php
    $a = 0;
    $b = 0;
    if($a = 3 > 0 || $b = 3 >0 )
    {
      $a++;
      $b++;
      echo $a."\n";
      echo $b."\n";
    }
    

    运算符优先级顺序为:'>' > '||' > '='

    第一步:3>0,
    第二步:((3>0)||$b = 3>0)  //短路运算,$a = true
    第三步:
    递增递减运算符不影响布尔值;$a++ = 1;
    

    相关文章

      网友评论

          本文标题:PHP运算符一网打尽

          本文链接:https://www.haomeiwen.com/subject/fqmpgqtx.html