此处的&符号该怎么理解?
程序员文章站
2022-06-16 11:12:23
...
/**
* 获取各请求方法PV数
*
* @param integer $interval 周期间隔
* @param string $referenceTime 基准时间
* @param array $domains 域名列表
* @param array $paths 路径列表
* @param array $methods 请求方法列表
* @param string $pvCountOrder PV数排序 - 正序:ASC 倒序:DESC
* @param integer $offset 结果偏移
* @param integer $limit 结果数量
* @param boolean &$total 结果总数
* @return array PV数列表
*/
public function getPvCountForMethods(
$interval,
$referenceTime,
$domains = array(),
$paths = array(),
$methods = array(),
$pvCountOrder = 'DESC',
$offset = 0,
$limit = -1,
&$total = false
) {
// 确定请求方法PV日志表
$logTable = $paths
求助:上面的php 参数中的&符号怎么理解?
回复内容:
/**
* 获取各请求方法PV数
*
* @param integer $interval 周期间隔
* @param string $referenceTime 基准时间
* @param array $domains 域名列表
* @param array $paths 路径列表
* @param array $methods 请求方法列表
* @param string $pvCountOrder PV数排序 - 正序:ASC 倒序:DESC
* @param integer $offset 结果偏移
* @param integer $limit 结果数量
* @param boolean &$total 结果总数
* @return array PV数列表
*/
public function getPvCountForMethods(
$interval,
$referenceTime,
$domains = array(),
$paths = array(),
$methods = array(),
$pvCountOrder = 'DESC',
$offset = 0,
$limit = -1,
&$total = false
) {
// 确定请求方法PV日志表
$logTable = $paths
求助:上面的php 参数中的&符号怎么理解?
& 表示PHP中对变量的引用。
放到这段代码里的意思就是说$total这个参数内部的指针指向传过来的地方,
PHP 解释器不会在这个函数体内注册新的变量$total,而是直接引用传过来的那个地方的$total变量,
如果函数体内对$total的值进行了修改,那么外面的$total也会随之改变
example:
简单类型的传递有两种
一种是值传递
一种是引用传递
&就是引用传递
传值还是引用啊,&$total表示把$total的地址传进去
看这个: 这是一个手册
然后,git blame 文件名
, 找到作者,打死。
支持blame 打死, 9个参数 ......
引用传递把,可以看成一个指针,指向同一个内存地址
引用
作用:
修改同一个值,因为内存地址是一样的