PHP运算符一网打尽

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;
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • PHP 的运算符,它包含算术运算符、赋值运算符、位运算符、比较运算符、执行运算符、递增递减运算符、逻辑运算符、字符...
    三生石的等待阅读 2,948评论 0 0
  • 运算符是用来对变量、常量或数据进行计算的符号,它对一个值或一组值执行一个指定的操作。PHP的运算符包括算术运算符...
    nothing_c阅读 4,503评论 0 1
  • 1.认识php php是服务端嵌入到HTML中的脚本语言。php的功能包括但不限于: 收集表单数据 生成动态网页 ...
    楠哥哥_0b86阅读 4,359评论 3 1
  • 表达式的定义 在php中任何有值的东西都是表达式。 表达式的实例 表达式的说明 表达式可以组成语句但不是语句。 运...
    Stone_Zhuo阅读 2,593评论 0 2
  • 运算符优先级 题:foo() 和@foo() 的区别? 考点: 运算符中的错误控制符@的使用和作用; 所有PHP运...
    Monkey_zhou阅读 5,068评论 0 0

友情链接更多精彩内容