You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP中函数参数表达式内&符号的作用是什么?

代码中&符号的作用解释

这里的&是按位与运算符,和你提到的按引用传递完全是两回事。

两种&用法的区分:

  • 按引用传递的&:只会出现在函数定义的参数前(比如function test(&$param)),或者旧版PHP调用函数时的变量前(这种写法现已废弃),作用是让函数直接操作原变量而非其副本。
  • 按位与的&:作为双目位运算符,会对两个整数的二进制位执行与运算——对应位同时为1时结果位为1,否则为0。

结合这段代码的场景:

PHP的错误级别常量都是2的幂次(比如E_ERROR对应1=2^0,E_WARNING对应2=2^1),pow(2, $i)的作用是生成某一个错误级别的二进制掩码。$errLvl & pow(2, $i)则是用来判断$errLvl中是否包含该错误级别:如果运算结果不为0,说明当前错误级别包含这个类型,再将结果传给FriendlyErrorType函数,转换成易读的错误类型描述。

内容的提问来源于stack exchange,提问作者user3425506

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 08:22:18