Die Eigenschaften Ihrer Blog-Entität werden höchstwahrscheinlich als protected
deklariert. Deshalb können Sie nicht von außerhalb der Entität über sie iterieren.
Wenn Sie Ihre Blog-Entities schreibgeschützt verwenden und nur auf die als @Columns markierten Eigenschaften zugreifen müssen (lesen Sie: Sie müssen keine Methoden für Ihre Entität aufrufen), sollten Sie sie verwenden Array-Hydratation. Auf diese Weise werden Sie mit einfachen Arrays arbeiten, und $k=>$v
Type Iteration funktioniert gut.
Andernfalls müssen Sie eine Art der Methode "getValues ()" für Ihre Entitätsklasse erstellen. Dies könnte eine einfache Implementierung sein, die nur Builds und Arrays erstellt und zurückgibt.
Schließlich können Sie eine allgemeine Funktion namens getValues () als Dienstprogrammfunktion erstellen, die die Klassenmetadaten der Lehrmethode verwendet, um herauszufinden, welche Spalten und Entitäten die betreffenden Daten enthalten und bearbeiten. Eine einfache Implementierung wie folgt:
%Vor%BEARBEITEN - Eine ausgereiftere Version der obigen Methode scheint hier verfügbar - Ich habe noch nicht damit gespielt, aber es sieht vielversprechend aus.
Wenn Sie nur schnell und einfach die Eigenschaften der Entity bekommen wollen, mache ich das in meinen Projekten:
Alle meine Entitäten erben von einer EntityBase-Klasse, die die folgende Methode hat:
%Vor% Also muss ich nur $entity->toValueObject()
aufrufen und erhalte ein Standardobjekt mit allen Eigenschaften der Entität als öffentliche Eigenschaften.