Ich bin mir sicher, dass diese Frage auf andere komplexe Objekttypen zutrifft, aber EntityDrupalWrapperich arbeite gerade damit. Dies ist der Objekttyp, den entity_metadata_wrapper()(und wahrscheinlich auch andere) zurückgeben.
Wenn Sie Code wie den folgenden verwenden:
$order_wrapper = entity_metadata_wrapper('commerce_order', $order_object);
dpm($order_wrapper);
Die Ausgabe von Devel ist nicht allzu hilfreich:

Es wird nicht angezeigt, was Sie erwarten, wenn Sie dpm()beispielsweise ein stdClassObjekt aufrufen .
Ein ähnlicher Aufruf von dvm()gibt das Objekt aus, ist aber in einer Weise, die ich nicht kenne, und nicht sehr lesbar.
Ich habe es versucht debug()und es erzeugt einen PHP-Benutzerhinweis, der ungefähr so aussieht:

Übrigens ist die in dieser Warnung enthaltene HTML-Ausgabe dieselbe Ausgabe, die dvm()auf dem Bildschirm ausgegeben wird .
Wie kann ich diese Art von Objekten (vorzugsweise mit Krumo) untersuchen, um festzustellen, welche Eigenschaften verfügbar sind? Oder stecke ich fest mit dvm()?
__get()und __set()war involviert. Haben Sie aus Interesse eine bevorzugte Möglichkeit, herauszufinden, welche Klasseneigenschaften für welchen Wrapper verfügbar sind? Oder geht es nur darum, aus Erfahrung zu wissen?
dpm($wrapper->getPropertyInfo());, es hilft wirklich