ShVad
JSmart CMS
Рекурсия для подсчета кол-ва тем и постов
Здравствуйте
Цель написать функцию которая будет суммировать кол-во тем и ответ в под-форумах форума.
Структура массива такая:
Написал функцию:
Если убрать комментарии то функция не работает, а так считает до 2го вложения.
Как поправить?
Спасибо.
Здравствуйте
Цель написать функцию которая будет суммировать кол-во тем и ответ в под-форумах форума.
Структура массива такая:
PHP:
Array
(
[1] => Array
(
[id] => 1
[name] => Тестовая категория
[description] =>
[position] => 0
[parent_id] => -1
[is_category] => 1
[topics] => 0
[posts] => 0
[last_topic] => 0
[last_title] => 0
[last_time] => 0
[last_post] => 0
[last_poster_id] => 0
[last_poster_name] =>
[alt_name] =>
)
[2] => Array
(
[id] => 2
[name] => Тестовый форум
[description] => Описание тестового форума
[position] => 0
[parent_id] => 1
[is_category] => 0
[topics] => 1
[posts] => 10
[last_topic] => 0
[last_title] => 0
[last_time] =>
[last_post] => 0
[last_poster_id] => 0
[last_poster_name] =>
[alt_name] =>
)
PHP:
function stats_count ($id, &$array, $topics = 0, $posts = 0)
{
$topics += $array[$id]['topics'];
$posts += $array[$id]['posts'];
foreach ($array as $forum)
{
if ($id == $forum['parent_id'])
{
$topics += $forum['topics'];
$posts += $forum['posts'];
// рекурсия //
//$result = $this->stats_count($forum['parent_id'], &$array, $topics, $posts);
//$topics += $result['topics'];
//$posts += $result['posts'];
// ... //
}
}
return array('topics' => $topics, 'posts' => $posts);
}
Как поправить?
Спасибо.