0

他の場所から削り取られたデータ画面を返すことに対処するためにビューヘルパーを作成しています。私の質問は、収集されたデータを収集してビューで使用するために返すための最良の方法は何ですか?

ビューヘルパーが出て、データでいっぱいのいくつかのdivを正常に取得するとします。

データの配列を返し、ビューでそれを繰り返す必要がありますか?

$i = 0
foreach($this->myHelper as $noob) {
    echo '<div><h3>'.$noob[$i][0].'</h3><a href="'.$noob[$i][1].'">'.$noob[$i][2].'</a></div>';
    $i++;
}

または、ビューヘルパーで出力を作成し、ロット全体を文字列として返すのでしょうか。

echo $this->myHelper;
/* giving me something like: 
    <div><h3>Foo1</h3><a href="bar1.htm">bar1</a></div>
    <div><h3>Foo2</h3><a href="bar2.htm">bar2</a></div>
*/

または、配列ではなくオブジェクトを返すか、欠落している(または上記の例で失敗した)他の方法を返しますか?前もって感謝します。

4

1 に答える 1

1

ビューの部分引数を追加し、指定された部分スクリプトにデータを渡します。たとえば、partialまたはpartialLoopヘルパー(データに応じて)を使用して結果を返します。

<?php echo $this->myHelper('path/to/partial.phtml') ?>

そしてあなたのヘルパーで

return $this->partial($partialScript, $data);

編集物事を単純化したい場合は、部分引数をオプションにすることができ、それが欠落している場合は、HTML文字列を内部で作成します。

ビューヘルパーの基本的な考え方は、実装する文字列またはオブジェクトを返すことです。__toString()

于 2011-02-08T23:35:14.207 に答える