可変変数を使用して何かをしようとしていますが、オブジェクトの問題で行き詰まりました。このクラスの設定を想像してください:
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 関数を使用しないオプションはありますか?