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; }