/** * @param Forum $forum * @param $data * @param string $prefix * @return mixed */ protected function addForumToTreeArray(Forum $forum, $data, $prefix = "") { $name = $forum->getName(); if (!empty($prefix)) { $name = $prefix . " - " . $name; } $data[] = array("id" => $forum->getId(), "name" => $name, "type" => $forum->getType()); foreach ($forum->getChildren() as $subforum) { $data = $this->addForumToTreeArray($subforum, $data, $name); } return $data; }