ThinkPHP模板Volist標籤嵌套迴圈輸出多維陣列的方法

來源:互聯網
上載者:User
本文執行個體講述了ThinkPHP模板Volist標籤嵌套迴圈輸出多維陣列的方法。分享給大家供大家參考,具體如下:

ThinkPHP 中對 volist 標籤嵌套使用可實現多維陣列的輸出。

volist 嵌套使用

一般的二維數組,可以用 volist 標籤直接迴圈輸出。對於多維陣列,則需要對其中的數群組成員再次使用 volist 標籤嵌套迴圈輸出。

構建一個多維陣列:

$food = array();$food[0]['fruits'][0]['fruits1'] = '蘋果1';$food[0]['fruits'][0]['fruits2'] = '桔子1';$food[0]['fruits'][0]['fruits3'] = '香蕉1';$food[0]['vegetables'] = '白菜1';$food[1]['fruits'][1]['fruits1'] = '蘋果2';$food[1]['fruits'][1]['fruits2'] = '桔子2';$food[1]['fruits'][1]['fruits3'] = '香蕉2';$food[1]['vegetables'] = '白菜2';

使用 print_r() 函數列印出該數組如下:

Array(  [0] => Array    (      [fruits] => Array        (          [0] => Array            (              [fruits1] => 蘋果1              [fruits2] => 桔子1              [fruits3] => 香蕉1            )        )      [vegetables] => 白菜1    )  [1] => Array    (      [fruits] => Array        (          [1] => Array            (              [fruits1] => 蘋果2              [fruits2] => 桔子2              [fruits3] => 香蕉2            )        )      [vegetables] => 白菜2    ))

在對應模組操作(如Index/display)裡將變數賦值給模板,並將模板輸出:

$this->assign( "food", $food );$this->display();

模板 Tpl/default/Index/display.html :

食物品種:


水果1:{$f['fruits1']}

水果2:{$f['fruits2']}

水果3:{$f['fruits3']}

蔬菜:{$vo['vegetables']}


在模板裡面,首先將 $food 變數進行迴圈輸出。由於 $food 數組的成員 fruits 也是一個數組,因此再對 $vo['fruits'] 變數進行迴圈輸出(注意沒有 $ 符號)。

輸出結果如下:

食物品種:水果1:蘋果1水果2:桔子1水果3:香蕉1蔬菜:白菜1水果1:蘋果2水果2:桔子2水果3:香蕉2蔬菜:白菜2

同理推之以此方法可以對更多維的數組進行迴圈輸出。

更多關於thinkPHP相關內容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《ThinkPHP常用方法總結》、《smarty模板入門基礎教程》及《PHP模板技術總結》。

希望本文所述對大家基於ThinkPHP架構的PHP程式設計有所協助。

以上就介紹了ThinkPHP模板Volist標籤嵌套迴圈輸出多維陣列的方法,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.