所以我从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]'];
然而,你尝试的最后一个应该能正常工作。