ограничить дерево комментариев

291
14 февраля 2017, 21:57

Есть функция которая отлично собирает дерево.

function comments_r($data) {
    $tree = array();
    foreach ($data as $id=>&$node) { 
        if (!$node['comment_parent_id']) {
            $tree[$id] = &$node;
        } else { 
            $data[$node['comment_parent_id']]['childs'][$id] = &$node;
        }
    }
    return $tree;
}

Вот только она это делает бесконечно, как можно ее ограничить? Что б к примеру после 5 го коммента все его потомки и потомки потомков стали потомком 5 го потомка :))

пример входящего массива:

Array
(
    [359] => Array
        (
            [comment_id] => 359
            [comment_parent_id] => 0
            [comment_text] => 1                      
            [comment_name] => admin
            [comment_date] => 15:07 12-02-2017
        )
    [360] => Array
        (
            [comment_id] => 360
            [comment_parent_id] => 359
            [comment_text] => 2      
            [comment_name] => admin
            [comment_date] => 15:07 12-02-2017
        )
    [361] => Array
        (
            [comment_id] => 361
            [comment_parent_id] => 360
            [comment_text] => 3                
            [comment_name] => admin
            [comment_date] => 15:07 12-02-2017
        )
)
READ ALSO
WordPress: Как убрать sidebar для Страницы записей?

WordPress: Как убрать sidebar для Страницы записей?

Здравствуйте, Вопрос заключается в следующем: Каким образом (без использования плагинов) я могу убрать sidebar со Страницы Записей?

559
php json парсинг внутри (callback)

php json парсинг внутри (callback)

Здравствуйте! Подскажите пожалуйста, как мне спарсить значения json файла, который обернут в callback ?

450
Ошибка драйвера mysql при переходе на php7

Ошибка драйвера mysql при переходе на php7

В результате перехода на Bitrix 165 и php версии 7 получил следующую багу:

478
Постраничная навигация в таблице

Постраничная навигация в таблице

Помогите сделать постраничную навигацию по выводу таблиц, к примеру по 20 строк на странице, вот код

407