ホームページ  >  記事  >  バックエンド開発  >  40 点: ThinkPHP ループのネストにより、親クラスとサブクラスのリストが出力されます。

40 点: ThinkPHP ループのネストにより、親クラスとサブクラスのリストが出力されます。

WBOY
WBOYオリジナル
2016-06-13 13:46:591021ブラウズ

40 ポイント。親クラスとサブクラスのリストを出力する ThinkPHP ループのネスト
皆さんこんにちは。最近、thinkPHP フレームワークを学習しています。テンプレート ページにデータのリストを出力するループを実装したいと思っています。最初に親クラスのカテゴリ名を出力し、次に対応するサブカテゴリのリストを出力し、次に別の親クラスの名前を出力し、次に親クラスの対応するサブカテゴリを出力する、というようになります。 。 。私はテーブルレイアウトを使用しており、形式は次のとおりです。


カテゴリ名紹介

親カテゴリ名 1 ...
サブカテゴリ名 1 .. ...
サブクラス名 2 .....
サブクラス名 3 .....
親クラス名 2 .....
サブクラス名 1 。 ....
サブクラス名 2 .....
サブクラス名 3 .....


volist を使用して実装する方法はありますか? または、より良い方法はありますか?アドバイスをいただければ幸いです。 !



-----解決策---------------------------- ----
使用方法は地面に戻って横断するだけです

------解決策----------------------
試してみてください: これが初めてですすべてのparent_idを検索し、レコードセットの合計parent_countを書き留め、parent_countでループダウンするなど...
------解決策---------

HTML コード
<みんな>

            <foreach name="list" item="vo" >
                <tr rel="{$vo.depa_id}" target="depa_id">
                    <td>{$vo.depa_id}</td>
                    <td><?php if ($vo['depa_default'] == 1)
    echo '<b>[メインページ]</b> ?<a href="__BASEURL__/{$vo.dein_id}/{$vo.depa_id}.html" target="_blank ">{$vo.depa_title}</a></td>
                    <td>{$vo.label_count}</td>
                    <td>{$vo.model_name}</td>
                    <td>{$vo.depa_order}</td>
                </tr>
                <foreach name="vo.son" item="son" >
                    <tr rel="{$son.depa_id}" target="depa_id">
                        <td>{$son.depa_id}</td>
                        <td><img style="vertical-align: middle;" src="http://bbs.phpchina.com/images/default/tree_linemiddle.gif" alt="|-" title="|-" /><a href="__BASEURL__/mudidi/{$vo.dein_id}/{$vo.depa_id}.html" target="_blank">{$son.depa_title}</a></ td>
                        <td>{$son.label_count}</td>
                        <td>{$son.model_name}</td>
                        <td>{$son.depa_order}</td>
                    </tr>
                </foreach>
            </foreach>
            </tbody>
<br><font color="#e78608">------解決策---------</font><br><br><br>テンプレートが良くありません再帰、より良い方法は、プログラム ロジックで大まかなツリー構造を再帰し、テンプレートでスタイルを制御することです。
<br><font color="#e78608">------解決策---------</font><br>関連付けモデルを使用する<br>
PHP コード

<ボリスト名="リスト" id="vo">
  <tr><td>{$vo.typeName}</td><td>{$vo.typeDescription}</td></tr>
  <ボリスト名="vo.depat" id="値">
      <tr><td>{$value.typeName}</td><td>{$value.typeDescription}</td></tr>
  </ボリスト>
</ボリスト>
<br><font color="#e78608">------解決策------------------</font><br> これは通常、MYSQL を使用して行われ、通常はデータベースがセットアップされ、最初に親クラスとサブクラスに同じフィールド VAL を設定し、次にサブクラスにフィールドを追加して親クラス ID を保存すると、WEB ページがループアウトします <div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。