首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP -递归函数中的连接

PHP -递归函数中的连接
EN

Stack Overflow用户
提问于 2018-06-11 04:53:14
回答 1查看 608关注 0票数 1

我有这样的函数:

代码语言:javascript
复制
function getTree($r, $html) {
            foreach ($r as $entry) {
                if (count($entry['children']) == 0) {
                        $html .= '<li>' . $entry['parent_entry_id'] . '</li>';
                    } else {
                        getTree($entry['children'], $html);
                    }
                    //var_dump($html);
                }
                return $html;
            }

如果我这样称呼它

代码语言:javascript
复制
$html = '';
$dzoni = getTree($results, $html);
echo $dzoni;

E期望得到很少的列表元素,但是我得到了空字符串。数据是没有问题的。如果我对它们执行var_dump操作,就会得到结果。但是结果并不总是连接在一起的。它只是在某个点上停止。var_dump示例:

代码语言:javascript
复制
C:\wamp64\www\co_3\regular_view.php:72:string '<li>17</li>' 
C:\wamp64\www\co_3\regular_view.php:72:string '<li>17</li><li>18</li>' 
C:\wamp64\www\co_3\regular_view.php:72:string '<li>22</li>' 

我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-11 04:55:11

递归时,需要使用返回值,而不是丢弃返回值:

代码语言:javascript
复制
getTree($entry['children'], $html);

应该是这样的:

代码语言:javascript
复制
$html = getTree($entry['children'], $html);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50787960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档