#setlinebreak(on)
 [[PEAR/HTML_Template_Flexy]]
 
 * 繰り返し Flexy:foreach [#haa7aef8]
 
 #htmlinsert(googleAdsense.html)
 #ref(http://dozo.rgr.jp/img/img20_file.png,right,nolink,around,PHP::PEAR)
 
 
 データベースからリストを取得してforeachで表示という方法が
 しょっちゅう出てきますが。
 DBからの結果は配列ではなくオブジェクトで取得してください。
 セットしたオブジェクトを拡張することで非常に柔軟な表示が可能になります。
 参考:[[DB::setFetchMode()>http://pear.php.net/manual/ja/package.database.db.db-common.setfetchmode.php]]
 データが複数行ある場合、
 繰り返しを使って表示します。
 データベースからデータをとってきて、
 foreachで表示というのは、
 どのテンプレートエンジンでも定石です。
 
 
         タグの中に記述する場合
         キーがあるとき
         <tag flexy:foreach="パラメータ,キー,値">ループ内容</tag>
         キーがないとき
         <tag flexy:foreach="パラメータ,値">ループ内容</tag>
         タグの外に記述する場合:
         キーがあるとき
 構文はこんな感じ。
     タグの中に記述する場合
       キーがあるとき
         <tag flexy:foreach="パラメータ,キー,値">
           ループ内容
         </tag>
       キーがないとき
         <tag flexy:foreach="パラメータ,値">
           ループ内容
         </tag>
     タグの外に記述する場合:
       キーがあるとき
         {foreach:パラメータ,キー,値}
         ループ内容
           ループ内容
         {end:}
         キーがないとき
       キーがないとき
         {foreach:パラメータ,値}
         ループ内容
           ループ内容
         {end:}
 
 DBからの結果は配列ではなくオブジェクトで取得してください。
 セットしたオブジェクトを拡張することで非常に柔軟な表示が可能になります。
 
 配列にするとテンプレート上に非常に複雑なコードを書くことになるか、
 プログラム上で展開して値を変更するなどが必要になる場合が出てきます。
 
 参考:[[DB::setFetchMode()>http://pear.php.net/manual/ja/package.database.db.db-common.setfetchmode.php]]
 
 
 #comment


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Third Project
証券会社ランキング比較