>在PHP中使用array_splice的正确方法是什么?函数头清楚地说:
array_splice(array& $input,int $offset …所以它应该接受引用作为第一个参数.
但是,一条线
array_push(& $this-> contextsIds,$contextId);
触发错误已弃用:已在…第132行中弃用了调用时间传递引用
>如何返回对数组的引用?我有:
public function &getContextsIds() {
return is_array($this->contextsIds) ? $this->contextsIds : array();
}
但它说注意:只应通过引用返回变量引用
解决方法:
>该函数已被声明为引用(array& $input);你不需要&再次调用该函数时.只需将其称为:
array_push($this->contextsIds, $contextId);
>正如消息所说,你应该只通过引用返回实际变量,而不仅仅是值.在您的示例中,有两个这样的实例:? :运算符求值为一个值,而array()本身只是一个未绑定到任何变量的值.您应该只返回您的类成员,无论它是否为空:
return $this->contextIds;
标签:php,arrays,reference
来源: https://codeday.me/bug/20190726/1544647.html