php写的一个递归实现无限分类生成下拉列表的函数
发布时间:2015-03-11 编辑:jiaochengji.com
php写的自定义函数,递归实现无限分类生成下拉列表,不用每次都从数据库读取数据,提高了效率。
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;
}
?>
/*—————————————————— */
//– 递归实现无限分类生成下拉列表函数
//– $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递归实现无限分类生成下拉列表函数代码
php写的一个递归实现无限分类生成下拉列表的函数
php用递归方法实现无限级分类的代码
php无限级分类的递归函数
PHP用递归返回无限级分类回字符串或数组实例
php递归算法 php递归函数无限级分类
php无限分类的例子(仿淘宝商品分类)
一文了解Python中的递归
php 无限极分类(递归函数)代码
php程序员面试题分享
上一篇:php与mysql实现的无限级分类
下一篇:递归循环遍历每一个目录的php函数
[关闭]