select下拉菜单需要做下拉分级的时候通过本方法即可获得,实现效果如图。
本方法需要传入下拉菜单列表,包含了id,父级id和显示名。在select下拉中每一个选项都会标注出它是属于几级,效率很快。
/**
* 用于下拉列表,返回一个array,每一个层级前面递增一个-
* 作者 http://www.5atl.com
* @param unknown 种子
* @param number 起始父id
*/
function selectTree($param, $pid = 0, $lvl = 0)
{
static $res = [];
foreach ($param as $key => $vo) {
if ($pid == $vo['pid']) {
$vo['position'] = str_repeat('▪', $lvl) . (1 + $lvl) . '岗 -' . $vo['position'];
$res[] = $vo;
$temp = $lvl + 1;
selectTree($param, $vo['id'], $temp);
}
}
return $res;
}