它知道它可以用get_class($variable)
完成。 问题是我的$object
实际上是一个包含变量名称的字符串。确定对象的类别
这样:
$object = new MyClass();
$var = '$object';
$class = get_class($var); // obviously fails
我不能使用get_class($object)
,因为我没有这个变量直接访问
(我是从parsing a PHP expression使用token_get_all()产生$var
字符串)我尝试使用eval(sprintf('return get_class(%s);', $var))
,但它不工作,因为变量出现未定义从eval的范围:(
有没有办法做到这一点?
我需要知道该类以便将它传递给ReflectionMethod,以便我可以获取有关方法(PHP表达式中的下一个元素)的信息。
NVM:我很确定这是不可能的。对不起,问:)
@Andreas Linden不应该从$ var取消前导$来做到这一点吗? – yent 2012-07-24 14:15:41
@yent你是对的 – 2012-07-24 14:19:49