如何从类变量数组中访问类成员?

时间:2010-02-17 21:22:34

标签: php arrays class-members

我想使用PHP的反射功能从方法中检索参数名称列表。我有一个这样的课:

class TestClass {
    public function method($id, $person, $someotherparam) {
        return;
    }
}

我可以使用以下代码获取列表:

$r = new ReflectionClass('TestClass');

$methods = $r->getMethods();

foreach($methods as $method) {
    $params = $method->getParameters();
    $p = $params[0]; // how can I combine this and the next line?
    echo $p->name;

我想知道如何从数组中访问类成员,所以我不必进行任务。这可能吗?我试过像echo ($params[0])->name这样的东西,但是我收到了一个错误。

1 个答案:

答案 0 :(得分:1)

你可以替换这两行:

$p = $params[0]; // how can I combine this and the next line?
echo $p->name;

单一的那个:

echo $params[0]->name;

即。这里不需要任何括号。


但你不能使用这种语法:

($params[0])->name

它会给你一个

Parse error: syntax error, unexpected T_OBJECT_OPERATOR