スコープに依存しない代替手段はありget_object_vars()
ますか?
オブジェクトからすべてのパブリックプロパティを取得する必要があります
これは、リフレクションAPIを使用して実行できます。
<?php
class Foo {
public $foo = 1;
protected $bar = 2;
private $baz = 3;
}
$foo = new Foo();
$reflect = new ReflectionClass($foo);
$props = $reflect->getProperties(ReflectionProperty::IS_PUBLIC);
var_dump($props);
?>
関数内にラップするだけです。
$get_vars = create_function('$object', 'return get_object_vars($object);');
今あなたがしなければならないのは呼び出すことだけです$get_vars($object)
。