찾다

 >  Q&A  >  본문

기능 출력 문제입니다. 출력이 제어되지 않습니다.

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粉318199689P粉318199689942일 전822

모든 응답(4)나는 대답할 것이다

  • autoload

    autoload2022-07-26 09:01:34

    통제할 수 없습니다. 이 함수는 에코됩니다. 에코를 삭제하면 변수를 사용하여 배열이 직접 반환됩니다.

    image.png

    뷰에서 직접 연결

    회신하다
    0
  • autoload

    autoload2022-07-25 21:28:30

    페이지에 아무것도 쓰지 말고 컨트롤러에서 전송된 변수를 인쇄하여 변수가 무엇인지 확인하세요

    회신하다
    1
  • P粉318199689

    배열입니다 Array ( [0] => Array ( [id] => 1 [pid] => 0 [name] => Youlou [son] => Array ( [0] => Array ( [id] => 2 [pid ] => 1 [이름] => 화[아들]

    P粉318199689 · 2022-07-25 21:30:55
    P粉318199689

    배열(14) { [1] => 배열(3) { ["id"] => int(1) ["pid"] => int(0) ["name"] => string(6) "건물이 있습니다" } [2] => 배열(3) { ["id"] => int(2) ["pid"] => int(1) ["이름"] => string(3) "굽기" } [3] => 배열(3) { ["id"] => int(3) ["pid"] => int(2) ["이름"] => string(6) "징바오" 데이터베이스에서 읽은 배열입니다.

    P粉318199689 · 2022-07-25 21:33:03
  • 취소회신하다