2016-04-14 6 views
1

So habe ich diese Ausgabe von var_dump ($ object)Zugriffsklassenvariablen mit Klammern um den Schlüssel

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

aber ich kann nicht auf die ‚Repository‘ string zu bekommen scheinen. Ich habe versucht, ...

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 

Wie zum Teufel bekomme ich die Zeichenfolge ‚MyStringStuff.Users‘ aus, dass?

Hier ein Screenshot: https://www.evernote.com/shard/s13/sh/9152cdc2-e6f4-45d6-b415-c55ea9a61349/5f44156aa06c5e3c7be66b4b97d90161

+1

Das sieht nicht genau wie 'var_dump' aus. – AbraCadaver

+0

Hier ist ein Screenshot: https://www.evernote.com/shard/s13/sh/2d6deba0-5689-4847-91e2-9ab7ab7cc725/990942e410299ab7d2a8b2fbac646930 –

+0

Der Bildschirm-Dump verweist auf ein Array, was mit dem Long \ Namespace \ User passiert ist Objekt? –

Antwort

0

Sie können Ihr Objekt als Array versuchen typecasting und mit nur der Schlüssel mit dem Namen:

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

jedoch, dass Sie zuletzt richtig funktionieren sollte versuchen.

+0

Nun, was ich davon bekomme: https://www.evernote.com/shard/s13/sh/029a6a92-b94e-4f64-a1b5-ec7bf9ffac4c/336ea836c4ccd6d7d2f89fcc060269c1 –

Verwandte Themen