本文執行個體講述了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教程有興趣的朋友有所協助。