如何在PHP中以字符串形式获取数组变量名?
我需要这样一个函数:如何在PHP中以字符串形式获取数组变量名?,php,Php,我需要这样一个函数: $foo = "bar"; $arr['bar'] = "foo"; myfunc(array($foo,$arr['bar'])); // return array('foo','bar') 有什么办法可以做到这一点吗?这在PHP中可能吗?您可以从字符串名称中获取一个变量,如下所示: $foo = "123"; $bar = "foo"; var_dump($$bar); // string(3) "123" 但据我所知,你不能走另一条路,找到一个变量的名称 无
$foo = "bar";
$arr['bar'] = "foo";
myfunc(array($foo,$arr['bar'])); // return array('foo','bar')
有什么办法可以做到这一点吗?这在PHP中可能吗?您可以从字符串名称中获取一个变量,如下所示:
$foo = "123";
$bar = "foo";
var_dump($$bar); // string(3) "123"
但据我所知,你不能走另一条路,找到一个变量的名称
无论如何,不需要知道变量的名称。尽可能使用关联数组。
<?php
$foo = "bar";
$arr['bar'] = "foo";
echo $$arr['bar']; //returns bar
myFunc(array($foo,$$arr['bar']));
?>
那就行了。太多的“foo”和“bar”。清理您试图询问的内容。在我看来,您的函数应该以相反的顺序返回数组,因此
//返回数组('bar','foo')
这个函数有很多种设计方法,因为它定义得不够好。试着把函数想象成一个函数,这是可能的。你到底需要它做什么?你当然可以把一个数组传递给一个函数,如果你是这么问的话。我的问题是这样的,但我想同时使用数组和变量,例如:$arr['foo']=“bar”;myfunc($arr['foo'])//返回数组键foo
我的问题是这样的,但我想同时使用数组和变量,例如:$arr['foo']=“bar”;myfunc($arr['foo'])//返回数组键foo