gdoo/app/Gdoo/Wechat/Services/MenuService.php

24 lines
573 B
PHP

<?php namespace Gdoo\Wechat\Services;
use Cache;
class MenuService
{
public function GetTreeByMenu($list, $id = 'id', $pid = 'pid', $son = 'sub')
{
$tree = $map = [];
foreach ($list as $item) {
$map[$item[$id]] = $item;
}
foreach ($list as $item) {
if (isset($item[$pid]) && isset($map[$item[$pid]])) {
$map[$item[$pid]][$son][] = &$map[$item[$id]];
} else {
$tree[] = &$map[$item[$id]];
}
}
unset($map);
return $tree;
}
}