J'ai environ 40 entités et de nombreuses relations bidirectionnelles. À chaque fois que j'utilise var_dump ($ user) ou une entité quelconque, mon navigateur est chargé avec trop de données de tableaux et de variables, il tombe en panne.
je veux quel est le problème.
Les données sont insérées correctement. Puis-je causer problème en production.
Remplacez var_dump () par la méthode de débogage dump () fourni par Doctrine Common .
\Doctrine\Common\Util\Debug::dump($user);
Cela fonctionne pour des objets simples et des collections Doctrine) et devrait empêcher le navigateur d’afficher les problèmes que vous rencontrez.
bien formaté:
echo '<pre>';
\Doctrine\Common\Util\Debug::dump($user, $recurciveLevelToDisplay);
echo '</pre>';
Exemple simple et facile.
var_dump(serialize($Object));
Symfony <2.6
Vous pouvez utiliser \Doctrine\Common\Util\Debug::dump($variable, $depth);
il affiche doctrine le résultat sans les informations sur le proxy).
Symfony> 2.6
Si vous utilisez symfony 2.6 ou plus, je vous conseille vivement d'utiliser dump()
. Il affiche une sortie bien formulée et colorée, et vous pouvez utiliser/masquer de manière dynamique des lignes.
Avec Symfony 2.6, vous pouvez désormais utiliser simplement dump ($ var) dans votre contrôleur et {{dump (var)}} dans twig.
Assurez-vous de l'ajouter à votre fichier AppKernal.php, dans la section array ('dev', 'test').
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
Le problème est que, dans une relation bidirectionnelle, les deux entités ont un lien l'une avec l'autre. Par conséquent, lors de l'affichage de entity1, var_dump devra également imprimer toutes les propriétés de entity2, y compris entity1, ce qui vous donne une boucle.
utilisez dump ($ user) et vous obtiendrez un résultat parfait dans Symfony Profiler! bonne chance
La méthode get_object_vars () améliore également la visualisation.
echo "<pre>";
\Doctrine\Common\Util\Debug::dump(get_object_vars($user));
Il suffit d'utiliser echo serialize ($ user);