访问键周围带括号的类变量


access class variables with brackets around the key

所以我从var_dump($object)得到了这个输出

object(MyObject'Long'Namespace'User)[167]
  public 'role' => string 'customer' (length=8)
  public '[repository]' => string 'MyStringStuff.Users' (length=21)

但我似乎找不到"repository"字符串。我试过了。。。

var_dump($object->role); // this works and gives me 'customer'
var_dump($object->{repository}; // gives me a undefined constant
var_dump($object->{'repository'}; // gives me null
var_dump($object->{$repository}; // gives me undefined variable
var_dump($object->{'[repository]'}); // gives me null
$repo = 'repository';
var_dump($object->{$repo}); // give me null

我怎么能从中得到字符串"MyStringStuff.Users"?

以下是屏幕截图:https://www.evernote.com/shard/s13/sh/9152cdc2-e6f4-45d6-b415-c55ea9a61349/5f44156aa06c5e3c7be66b4b97d90161

您可以尝试将对象类型转换为数组,只需使用命名键:

$event = (array) $event->subject()->entity;
$repo = $event['[repository]'];

然而,你尝试的最后一个应该能正常工作。