使用键周围的括号访问类变量

时间:2016-04-14 20:50:55

标签: php

所以我从var_dump($ object)

获得了这个输出
object(MyObject\Long\Namespace\User)[167]
  public 'role' => string 'customer' (length=8)
  public '[repository]' => string 'MyStringStuff.Users' (length=21)

但我似乎无法进入'存储库'串。我试过了......

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

1 个答案:

答案 0 :(得分:0)

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

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

但是,您尝试的最后一个应该正常工作。