- var_dump: documentation ( source)
<?php
class Ex extends \ReflectionException
{
public $reflector;
public function __construct($reflector, $message = '', \Exception $previous = null)
{
parent::__construct($message, 0, $previous);
$this->reflector = $reflector;
}
}
class A
{
private $private = 'private';
public $public = 'public';
}
class B
{
//public $private = 'pr';
private $public = 'pu';
}
class C extends \ReflectionClass
{
public function __construct($name)
{
try {
parent::__construct($name);
} catch (\Exception $e) {
throw new Ex($this, $e->getMessage(), $e);
}
}
}
try {
$c = new C('bla');
} catch (Ex $e) {
var_dump($e->reflector);
}
die();
$r = new \ReflectionClass('A');
$p = $r->getProperty('private');
$p->setAccessible(true);
$p->setAccessible(false);
var_dump($p->getValue(new stdClass()));
$p = $r->getProperty('public');
$p->setAccessible(false);
var_dump($p->getValue(new A()));