私は約40のエンティティと多くの双方向関係を持っています。 私はvar_dump($ user)または任意のエンティティを使用するたびに、ブラウザに配列や変数のデータが大量に読み込まれると、クラッシュしました。symfony2のvar_dumpでデータが多すぎます。doctrine2
私は問題を解決したいと思います。
データが正しく挿入されています。プロダクションで問題を起こすことはできますか?
私は約40のエンティティと多くの双方向関係を持っています。 私はvar_dump($ user)または任意のエンティティを使用するたびに、ブラウザに配列や変数のデータが大量に読み込まれると、クラッシュしました。symfony2のvar_dumpでデータが多すぎます。doctrine2
私は問題を解決したいと思います。
データが正しく挿入されています。プロダクションで問題を起こすことはできますか?
var_dump()を、Doctrine Commonが提供するデバッグ方法dump()で置き換えます。
\Doctrine\Common\Util\Debug::dump($user);
これは単一のオブジェクトとDoctrineコレクションで機能し、ブラウザの表示に関する問題を防止する必要があります。
ありがとうございましたbuddyは完璧に働いています – user825904
これは配列で複数の結果にも作用します – GusDeCooL
** dump()は** MaxDepth **で 'dump()'、第2引数は 'MaxDepth ** 'です。 –
両方のエンティティが相互にリンクしているので、entity1を表示しているときに、var_dumpはエンティティ2のすべてのプロパティも出力する必要があります。ウェルフォーマット
:
echo '<pre>';
\Doctrine\Common\Util\Debug::dump($user, $recurciveLevelToDisplay);
echo '</pre>';
get_object_vars()があまりにも視覚化を向上させます。
echo "<pre>";
\Doctrine\Common\Util\Debug::dump(get_object_vars($user));
だけ エコーにserialize($ユーザー)を使用します。
Symfony 2.6では、コントローラでdump($ var)を使用し、twigで{{dump(var)}}を使用できるようになりました。
これをAppKernal.phpファイルの配列( 'dev'、 'test')セクションに必ず追加してください。
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
シンプルで簡単な例。
var_dump(serialize($Object));
私は 'シリアライズ'出力をシンプルで読みやすいとは呼んでいません。 –
dump($ user)を使用すると、Symfony Profilerで完璧な結果が得られます!幸運
どのブラウザが話していますか? –
xdebugを使用していますか?そうでなければ、それを使うことを考え、var_dumpの代わりに、Ecplipse、Netbeans、PHPStormのようなIDEを使ってステップデバッガを使うだけです。これらはすべて変数データをうまく表示します。 – hakre
「クラッシュする」とはどういう意味ですか?ブラウザアプリケーション(またはタブ)が閉じるか、結果が表示されない、またはページが中断されていますか? – Yuriy