php递归实现无限分类生成下拉列表函数代码

发布时间:2019-09-11编辑:脚本学堂
分享一个递归实现无限分类生成下拉列表的php函数,效率不错,有需要的朋友参考下。

php自定义函数之递归实现无限分类生成下拉列表,提高效率,不用每次都从数据库读取数据。

代码:
 

复制代码 代码示例:
/*—————————————————— */
//– 递归实现无限分类生成下拉列表函数
//– $tpl->assign('sort_list',createSortOptions ());
//– $tpl->assign('sort_list',createSortOptions ($sort_id));
/*—————————————————— */
function createSortOptions ($selected=0,$parent_id=0,$n=-1)
{
global $db;
$sql = "SELECT * FROM `@__article_sort` WHERE `parent_id` = '{$parent_id}'";
$options = ";
static $i = 0;
if ($i == 0)
{
$options .= '<option value="0″ >请选择</option>';
}
$res = $db->query ($sql);
if ($res)
{
$n++;
while ($row = $db->fetch_assoc ($res))
{
$i++;
$options .="<option value='{$row['sort_id']}'";
if ($row['sort_id'] == $selected)
{
$options .=' selected ';
}
$options .=">".str_repeat(' ',$n*3).$row['sort_name']."</option>n";
$options .=createSortOptions ($selected,$row['sort_id'],$n);
}
}
return $options;
}

>>> 您可能感兴趣的文章:
php mysql实现无限分类的实例代码
php无限分类的例子(仿淘宝商品分类)
提高php无限分类查询的效率(使用数组和递归)
php实现的无限分类(递归版本)的例子
使用php数组实现的无限分类(不使用数据库与用递归)
php写的一个递归实现无限分类生成下拉列表的函数