有没有办法将数组传递给成员函数? 我试过这段代码:
class Testing
{
public function set($arr)
{
echo $arr['key'];
}
}
但是我收到了这个错误:未定义的索引(键)
答案 0 :(得分:4)
您可以传递数组,就像您完成的那样。
问题是,您传递的数组没有key
键的成员。
您可以通过在参数签名中的参数前放置前面的Array
来强制传递数组。
public function set(Array $arr) { ... }
您还可以检查使用isset()
或array_key_exists()
设置的数组键,后者适用于NULL
值的键。
答案 1 :(得分:1)
将数组传递给方法,就像将任何其他类型传递给方法一样
$o = new Testing;
$array = array('key' => 'Hello World');
$o->set($array);
在您看来,您的数组似乎无效(=>它没有名为“key”的键)。