从对象获取id

时间:2013-05-15 21:34:35

标签: php api codeigniter object

我正在使用api,我会返回这些值:

CultuurNet\Auth\User Object ( [id:protected] => c23e4336-8f84-4501-9253-8b2faage5291 [tokenCredentials:protected] => CultuurNet\Auth\TokenCredentials Object ( [token:protected] => 7f0be1ffab3a456a8a8aa5efeea86c1f [secret:protected] => ab3c927180d7854de0e8e5842a21bc92f ) )

如何在php中撤回[id:protected]?

3 个答案:

答案 0 :(得分:0)

使用reflections

$reflection = new ReflectionClass($user);
$property = $reflection->getProperty('id');
$property->setAccessible(true);

$id = $property->getValue($user);

但真正的方法是使用getter / setter。

答案 1 :(得分:0)

使用您自己的make类扩展CultuurNet \ Auth \ User,然后呈现一个返回受保护变量的get_id()函数。

class MyUser extends CultuurNet\Auth\User {
  function get_id() {
    return $this->id;
  }
}

答案 2 :(得分:0)

我假设您测试过getter方法?像

这样的东西
$object->getId();

如果吸气剂不存在,您可以使用反射,请参阅Maxim Khan-Magomedov的答案。