函數輸出問題,輸出不受控制.
P粉318199689
P粉318199689 2022-07-25 18:08:47
0
4
760
function generateTree($items)
 {       
 $items = Db::name('tree')->column('id,pid,name');        
$tree = array();        
foreach ($items as $item) {
    if (isset($items[$item['pid']])) { 
       $items[$item['pid']]['son'][] = &$items[$item['id']];
        } else { 
        $tree[] = &$items[$item['id']]; 
       } 
       } 
       return $tree; 
       }
       $tree = generateTree(0); 
  function getTreeData($tree)
      { 
       foreach ($tree as $t) {
        echo "<li><span><i " . "class=\"icon-minus-sign\"></i>" .$t["name"]. "</span>\n<a href=\"info.php?id=".$t["id"]."\" target=\"_blank\">详细</a><ul>\n"; 
      if (isset($t['son'])) {
                getTreeData($t['son']);
             } 
             echo "</ul>\n</li>\n"; 
            } 
        } 
        $list = getTreeData($tree);
        $this->assign('list',$list);    
    return $this->view->fetch();
 }

1.jpg

靜態檔案是這樣的1-3.jpg

直接輸出到1-1.jpg

不控制了.如果用變數2.jpg

只輸出一級,後面就沒有了.2-2.jpg

大神們教教我該怎麼寫,謝謝.

P粉318199689
P粉318199689

全部回覆(2)
autoload

你那不是不受控制,是這個函數echo了,直接刪除echo即可,數組直接用變數回傳

image.png

直接在視圖裡拼接

autoload

頁面啥都別寫,直接列印控制器傳輸過來的變量,看看是什麼

  • 回覆 是數組 Array ( [0] => Array ( [id] => 1 [pid] => 0 [name] => 有樓[son] => Array ( [0] => Array ( [id] => 2 [pid ] => 1 [name] => 燃[son]
    P粉318199689 作者 2022-07-25 21:30:55
  • 回覆 array(14) { [1] => array(3) { ["id"] => int(1) ["pid"] => int(0) ["name"] => string(6) "有樓" } [2] => array(3) { ["id"] => int(2) ["pid"] => int(1) ["name"] => string(3) "燃" } [3] => array(3) { ["id"] => int(3) ["pid"] => int(2) ["name"] => string(6) "京寶" 這是資料庫讀出的數組
    P粉318199689 作者 2022-07-25 21:33:03
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!