我正在尝试对可变变量做一些事情,但我遇到了一个对象问题。想象一下这个类设置:
class A
{
public $field = 10;
}
class B
{
public $a;
public function __construct()
{
$this->a = new A();
}
}
现在每个人都知道这段代码有效:
$a = new A();
$var = 'field';
echo $a->$var; // this will echo 10
有没有可能我可以做这样的事情?:
$b = new B();
$var = 'a->field';
echo $b->$var; // this fails
注意:任何不使用 eval 功能的选项?