我对 PHP 相对缺乏经验,我正在尝试对现有代码库进行一些更改。我有一个将数组作为参数的方法:
public function get_ids(array $order)
{
...
return $ret_val;
}
我想在这个数组中添加一个额外的元素,与 key 配对count
。我知道那把钥匙不存在。我对 PHP 文档的理解是所有变量都是通过引用传递的:
仅函数定义就足以通过引用正确传递参数。从 PHP 5.3.0 开始,当您在 foo(&$a); 中使用 & 时,您将收到一条警告说“调用时传递引用”已被弃用。从 PHP 5.4.0 开始,调用时传递引用已被删除,因此使用它会引发致命错误。
但是,当我这样做时:
public function get_ids(array $order)
{
...
$order['count'] = 5;
return $ret_val;
}
然后var_dump
在调用这个方法的方法中做一个,“count”没有键。但是,如果我在方法返回var_dump
之前做一个正确的操作,显然有一个. get_ids
count
这是怎么回事?我显然不了解 PHP 的原理,但我通常的谷歌搜索技能完全让我失望。