質問 > その他 > dump()すると中身は色んな情報があるのに、出力やループさせると特定の値で動作するのは何故ですか? |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ddcwor |
投稿日時: 2018/3/26 17:33
対応状況: −−−
|
新米 登録日: 2018/3/26 居住地: 投稿: 1 |
dump()すると中身は色んな情報があるのに、出力やループさせると特定の値で動作するのは何故ですか? EC-CUBEを初めて触り始めた者です。
おそらくtwigやフレームワークの側の基本的な事かとは思うのですが、表題の通りの疑問を抱いております。 例えば、商品詳細ページにて、商品画像の出力部のループ内部のことです。 {% for ProductImage in Product.ProductImage %} としてループされている中で、 {{ dump(ProductImage) }} とダンプしてみると ProductImage{#4773 -id: 4 -file_name: "cafe-1.jpg" -rank: 3 -create_date: DateTime{#4771} -Product: Product{#1678} -Creator: Member{#1787} } のようにidや画像名、ランクなど様々な情報が入っているのが確認できます。 ですが、次のように普通にProductImageを出力してみると、 {{ ProductImage }} 出力されるのは cafe-1.jpg 、つまり file_name の部分だけになっています。 そもそもこのループ自体、{% for ProductImage in Product.ProductImage %}としているこの ProductImage は何が回ってきているのかもよくわかりません... PHPの基礎的なことなのか、TwigのことなのかSymfonyのことなのかすらよく分かっておらず、Googleを彷徨っていても解決できませんでした。 有識者の方々、是非ともご教示願います。 |
red |
投稿日時: 2018/3/26 17:48
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1569 |
Re: dump()すると中身は色んな情報があるのに、出力やループさせると特定の値で動作するのは何故ですか? Product.ProductImage は、商品にある複数の画像なので、ループしています
{{ ProductImage }} で出力されるのが file_name なのは src/Eccube/Entity/ProductImage.php にそう書いてあるからです PHPのことというよりかは、ORMとSymfonyとTwigそれぞれ理解しないとわからないのかなと思います
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |