I'm working with an api and I it returns these values:
CultuurNet\Auth\User Object ( [id:protected] => c23e4336-8f84-4501-9253-8b2faage5291 [tokenCredentials:protected] => CultuurNet\Auth\TokenCredentials Object ( [token:protected] => 7f0be1ffab3a456a8a8aa5efeea86c1f [secret:protected] => ab3c927180d7854de0e8e5842a21bc92f ) )
How can I retreave the [id:protected] from it in php?
I assume you tested for a getter method? Something like
$object->getId();
If a getter does not exist, you can use reflection, see the answer of Maxim Khan-Magomedov.
Use reflections.
$reflection = new ReflectionClass($user);
$property = $reflection->getProperty('id');
$property->setAccessible(true);
$id = $property->getValue($user);
But true way is using getters/setters.
Extend CultuurNet\Auth\User with a class of your own make, and then present a get_id() function that returns the protected variable.
class MyUser extends CultuurNet\Auth\User {
function get_id() {
return $this->id;
}
}