福州網站建設>網站新聞>thinkphp6專區

        tp6問題新手請教一個模板循環的問題

        發布日期:2022-03-06瀏覽次數:827 來源:福州網站建設

        {volist name='typeData' id='vo'}
        {volist name='appData' id='vo'}
        {/volist}
        {/volist}
        兩個嵌套的volist 循環,外邊的是分類循環,里邊是文章列表循環,怎么樣才能依次循環出不同的分類和內容。可能描述的不太清楚,如下所示
        分類1
        文章1-1
        文章1-2
        分類2
        文章2-1
        文章2-2

        以上是由福州網站建設的小編為你分享了"tp6問題新手請教一個模板循環的問題"文章,如果你在這方面有什么問題,隨時聯系我們

        網友評論

        • han188126294 02月25日

          問題已解決 感謝二維老哥 貼下代碼
          php部分
          foreach ($typeData as $k=>$val){
          $cate[$k]['id'] = $typeData[$k]['id'];
          $cate[$k]['cate_name'] = $typeData[$k]['cate_name'];
          foreach ($appData as $item){
          if ($item['cate_id'] == $val['id']){
          $cate[$k]['app'][] = $item;
          }
          }
          }

          模板部分
          {volist name="cate" id="vo" key="k"}
          {$vo.cate_name}
          {volist name="vo['app']" id="f"}
          {$f.id}
          {/volist}
          {/volist}
          還有個問題 就是cate['app'],值為空時,打印$cate時app列不賦值
          然后模板渲染時報錯
          所有cate數組中存在app列時才正常

        • ab649412065 02月25日

          你吧數據的結構先整理一下,變成這樣。
          typeData=[
          {"分類":1,"appData":[{"文章":1,"id":1},{"文章":2,"id":2},{"文章":3,"id":3}]},
          {"分類":2,"appData":[{"文章":4,"id":4},{"文章":5,"id":5},{"文章":6,"id":6}]},
          ]。
          這個是json格式的樣子,這樣兩層循環就能嵌套了
          {volist name='typeData' id='type'}
          {$type.分類}
          {volist name='$type.appData' id='app'}
          {$app.文章}-{$app.id}
          {/volist}
          {/volist}

          不知道能不能理解

        • han188126294 02月25日

          感謝老哥 解決啦

        • 卟離卟棄 02月21日

          不要這樣,如果是使用Db的,使用循環,把它們循環成3維數組,如果是使用模型的,使用hasMany 關聯獲取
          foreach ($cat as $k=>$val){
          $cat[$k]['list'] = [];
          foreach ($list as $item){
          if ($item['cat_id'] == $val['id']){
          $cat[$k]['list'][] = $item;
          }
          }
          }
          這是循環成三維數組的,實際上使用模型更加好,但是那個三兩句說了你也不容易理解

        • han188126294 02月25日

          感謝老哥 解決啦

        thinkphp6專區有關的文章
        如果您有什么問題,歡迎咨詢我們客服! 點擊QQ咨詢