Twig のドット表記を使用してオブジェクトのプロパティにアクセスできません。たとえば、オブジェクト ダンプを見ると、image.copyright を実行できるはずです。これにより、最初のアイテムに「カリブ海のケイマン諸島近くの青いボタン (© Lawson Wood/Aurora Photos)」が出力されます。
私が得るエラーメッセージは
オブジェクト「SimpleXMLElement」のメソッド「copyright」が ARRaiDesignBundle:Default:wallpapers.html.twig の 12 行目に存在しません
dump(image) を使用してオブジェクトをダンプすると、各オブジェクトがダンプされます。
コントローラ クラス:
$host = 'http://www.bing.com';
$file = $host . '/HPImageArchive.aspx?format=xml&idx=0&n=10&mkt=en-US';
$xml = simplexml_load_file($file);
return $this->render('ARRaiDesignBundle:Default:wallpapers.html.twig', array('xml' => $xml, 'host' => $host));
wallpapers.html.twig ファイル:
...
{% for image in xml %}
<p><pre>{{ image.copyright }}</pre></p>
{% endfor %}
...
Twig で dump(image) を使用したオブジェクト ダンプ:
object(SimpleXMLElement)#268 (12) {
["startdate"]=>
string(8) "20130330"
["fullstartdate"]=>
string(12) "201303300000"
["enddate"]=>
string(8) "20130331"
["url"]=>
string(46) "/az/hprichbg/rb/BlueButton_EN-US1108621411.jpg"
["urlBase"]=>
string(43) "/az/hprichbg/rb/BlueButton_EN-US10208337365"
["copyright"]=>
string(77) "Blue button near the Cayman Islands, Caribbean (© Lawson Wood/Aurora Photos)"
["copyrightlink"]=>
string(74) "http://www.bing.com/search?q=Blue+Button+%28Porpita+porpita%29&form=hpcapt"
["drk"]=>
string(1) "1"
["top"]=>
string(1) "1"
["bot"]=>
string(1) "1"
...
誰でもこれを行う方法を提案できますか? Twig の代わりに PHP レンダリングを使用できることはわかっていますが、それは私にとっては解決策ではありません。ありがとう。