如何通过函数传递数组,例如:
$data = array(
'color' => 'red',
'height' => 'tall'
);
something($data);
function something($data) {
if ($data['color'] == 'red') {
// do something
}
}
如何让功能识别$data[color]
和$data[height]
?
答案 0 :(得分:1)
有时最简单的答案是正确答案:
$data = array(
'color' => 'red',
'height' => 'tall'
);
function something($data) {
if ($data['color'] == 'red') {
// do something
}
}
something($data);
在这种情况下,数组不需要特殊处理,您可以将任何类型的类型传递给函数。
答案 1 :(得分:1)
这有效:
$data = array('color' => 'red', 'height' => 'tall');
function something($data) {
if ($data['color'] == 'red') {
// do something
}
}
something($data);
作为评论,您需要引用字符串:$data['color']
。
答案 2 :(得分:0)
也许你需要对参数进行一些验证才能使函数更可靠。
function something($data)
{
if(is_array(data) and isset($data['color']))
{
if($data['color'] == 'red')
{
//do your thing
}
}
else
{
//throw some exception
}
}