获取传递给函数的数组键名,如$ array ['key']

时间:2012-02-07 10:14:03

标签: php

是否可以通过这种方式获取数组键名?

$array = ("first" => 1);

function f($object)
{
echo(???); //should give first
}

f($array['first']);

3 个答案:

答案 0 :(得分:2)

如果只将值传递给像f($object['first'])这样的函数,则不可能,在这种情况下,键名与传递的值无关。

您需要传递整个数组(f($array))并使用:

echo key($object);

答案 1 :(得分:0)

我真的不知道你想要得到什么,但我想这会对你有帮助:

$array = array('foo' => 'bar', 'baz' => 'foobar');

foreach ($array as $key => $value) {
  echo $key . ' = ' . $value . '<br />';
}

这将返回

foo = bar
baz = foobar

答案 2 :(得分:0)

我会用

$array = ("first" => 1);

function f($object, $key) {
    echo($key); // will give first
    echo($object[$key]); // will give 1
}

f($array, 'first');