Je suis sûr que cette question s'applique à d'autres types d'objets complexes, mais EntityDrupalWrapperc'est celui avec lequel je travaille actuellement. C'est le type d'objet retourné par entity_metadata_wrapper()(et probablement d'autres).
Lorsque vous utilisez un code comme celui-ci:
$order_wrapper = entity_metadata_wrapper('commerce_order', $order_object);
dpm($order_wrapper);
la sortie de Devel n'est pas très utile:

Il ne montre pas ce que vous attendez de voir pour un appel dpm()avec, par exemple, un stdClassobjet.
Un appel similaire à dvm()imprimer l'objet, mais d'une manière que je ne connais pas, et ce n'est pas très lisible.
J'ai essayé debug()et cela génère une notice utilisateur PHP qui ressemble à ceci:

Incidemment, la sortie HTML contenue dans cet avertissement est la même que celle dvm()imprimée à l'écran.
Comment puis-je inspecter ces types d'objets (de préférence avec Krumo) afin de voir quelles propriétés sont disponibles? Ou suis-je coincé en utilisant dvm()?
__get()et __set()étaient impliqués. Si vous êtes intéressé, avez-vous un moyen privilégié de déterminer quelles propriétés de classe sont disponibles pour quel wrapper? Ou est-ce juste une question de "savoir" basée sur l'expérience?
dpm($wrapper->getPropertyInfo());, cela aide vraiment les choses