函数输出问题,输出不受控制.
P粉318199689
P粉318199689 2022-07-25 18:08:47
[ThinkPHP讨论组]
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 "
  • " .$t["name"]. "\n详细
      \n";        if (isset($t['son'])) {                 getTreeData($t['son']);              }               echo "
    \n
  • \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
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号