ホームページ > バックエンド開発 > PHPチュートリアル > 無限分類ループ DIV 形式について

無限分類ループ DIV 形式について

WBOY
リリース: 2016-06-23 14:03:41
オリジナル
815 人が閲覧しました



テストデータ

Array(    [0] => Array        (            [id] => 10            [pid] => 0            [ppid] => 7            [m_title] => 系统分类            [m_flag] => 1            [m_type] => 0            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 0            [m_time] => 0000-00-00 00:00:00        )    [1] => Array        (            [id] => 9            [pid] => 0            [ppid] => 6            [m_title] => 排序管理            [m_flag] => 0            [m_type] => 0            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 0            [m_time] => 0000-00-00 00:00:00        )    [2] => Array        (            [id] => 8            [pid] => 0            [ppid] => 6            [m_title] => 登陆日志            [m_flag] => 0            [m_type] => 0            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 0            [m_time] => 0000-00-00 00:00:00        )    [3] => Array        (            [id] => 7            [pid] => 0            [ppid] => 6            [m_title] => 系统信息            [m_flag] => 0            [m_type] => 0            [m_url] => 11            [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 10            [m_time] => 0000-00-00 00:00:00        )    [4] => Array        (            [id] => 6            [pid] => 0            [ppid] => 0            [m_title] => 网站管理            [m_flag] => 1            [m_type] => 4            [m_url] => 11            [m_lage] => 1            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 10            [m_time] => 0000-00-00 00:00:00        )    [5] => Array        (            [id] => 5            [pid] => 0            [ppid] => 2            [m_title] => 文字链接            [m_flag] => 0            [m_type] => 22            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 10            [m_time] =>         )    [6] => Array        (            [id] => 4            [pid] => 0            [ppid] => 0            [m_title] => 关于我们            [m_flag] => 0            [m_type] => 0            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 10            [m_time] =>         )    [7] => Array        (            [id] => 1            [pid] => 0            [ppid] => 0            [m_title] => 新闻中心            [m_flag] => 0            [m_type] => 0            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 10            [m_time] =>         )    [8] => Array        (            [id] => 2            [pid] => 0            [ppid] => 0            [m_title] => 友情链接            [m_flag] => 0            [m_type] => 0            [m_url] =>             [m_lage] => 0            [m_seotitle] =>             [m_seokey] =>             [m_seodesc] =>             [m_sort] => 102            [m_time] =>         ))
ログイン後にコピー


変換が必要な関数
function dafenglei_arr($m,$id){	global $class_arr;	global $ppid;	if($id=="") $id=0;	$n = str_pad('',$m,'-',STR_PAD_RIGHT);	$n = str_replace("-","      ",$n);	for($i=0;$i<count($class_arr);$i++){	         if($i % 2==1){             	$bgcolors="bgcolor=#e9f5fe";             	             }else{             	$bgcolors="bgcolor=#ffffff";             }             		if($class_arr[$i]['ppid']==$id){		echo "<tr ".$bgcolors." onmouseout=\"this.style.backgroundColor=''\" onmouseover=\"this.style.backgroundColor='#DEF1F1'\">\n";		echo "<td height=\"28\" align=\"center\" valign=\"middle\" >	                <input type=\"checkbox\" name=\"checkbox[]\" value='".$class_arr[$i]['id']."' /></td>";		echo "<td height=\"28\" class=\"font\"><div align=\"center\">".$class_arr[$i]['m_sort']."</div></td>\n";		echo "<td height=\"28\" class=\"font\">".$n."|--<a href=\"?action=edit&amp;id=".$class_arr[$i]['id']."\">".$class_arr[$i]['m_title'].$m."</a></td>\n";		echo "<td height=\"28\" class=\"font\"></td>";		echo "<td height=\"28\" class=\"font\">".$class_arr[$i]['m_flag']."</td>";		echo "<td height=\"28\" class=\"font\"><div align=\"center\"><a href=\"sys_menu_add.php?action=edit&amp;id=".$class_arr[$i]['id']."\">修改</a>";		echo " <a href=\"?action=del&amp;id=".$class_arr[$i]['id']."\">删除</a>";		echo "</div></td>\n";		echo "</tr>\n";					dafenglei_arr($m+1,$class_arr[$i]['id']);		}			}	}
ログイン後にコピー


呼び出しメソッド

dafenglei_arr(0,0);

表示される結果は次のとおりです




はに変換する必要がありますdiv+css 構造 無限ツリー分類

は、http://www.bjshiyu.com/ のホームページの商品分類の効果に似ています


<ul id="files"><li id="m33"><a href="javascript:void(0);" >网站管理</a><ul><li><a href="/news-p11-pp33-ppp140" ><span class="">排序管理</span></a></li><li><a href="/news-p11-pp33-ppp141" ><span class="">登陆日志</span></a></li>	<li id="m33"><a href="javascript:void(0);" >系统信息</a>	<ul><li><a href="/news-p11-pp33-ppp140" ><span class="">系统分类</span></a></li></ul>	</li></ul></li><li id="m34"><a href="javascript:void(0);" >友情链接</a><ul><li><a href="/news-p11-pp34-ppp145" ><span class="">文字链接</span></a></li></ul></li></ul>
ログイン後にコピー



合計 3 つの投稿... 3 件の投稿に正解しました。彼に 160 ポイントを与えます....
あるかどうかを判断するはサブ列です
サブ列がある場合、リンクは javascript:void(0) です
リンクがない場合、それは http://www.baidu.com です

echo '<ul>';dafenglei_arr(1, 0);echo '</ul>';function dafenglei_arr($m,$id){    global $class_arr;    global $ppid;    if($id=="") $id=0;    for($i=0;$i<count($class_arr);$i++){      if($class_arr[$i]['ppid']==$id){        echo "<li>";        echo "<input type=\"checkbox\" name=\"checkbox[]\" value='".$class_arr[$i]['id']."' />";        echo $class_arr[$i]['m_sort'];        echo "|--<a href=\"?action=edit&id=".$class_arr[$i]['id']."\">".$class_arr[$i]['m_title'].$m.'</a>';        echo "<a href=\"sys_menu_add.php?action=edit&id=".$class_arr[$i]['id']."\">修改</a>";        echo " <a href=\"?action=del&id=".$class_arr[$i]['id']."\">删除</a>";        echo "\n<ul>";               dafenglei_arr($m+1,$class_arr[$i]['id']);        echo "</ul></li>\n";       }             }     }
ログイン後にコピー


つまり、ウェブサイト管理の下に列があります (並べ替え管理、ログインログ、システム情報) システム情報の下にシステムカテゴリがあります

ウェブサイト管理リンクは javascript:void です

並べ替え管理は www.baidu.com です

ログインログは www.baidu .com

システム情報は javascript:void です
システム分類 www.baidu.com

ほぼ長い間この形式になっています

お願いします、ボス、私のために修正してください。ありがとうございます。少しずつ近づいていきます

1回のスキャンでそれを行うのは不可能です。
生成された HTML に空の

    がたくさんあることに気づきましたか?


    上司がそれは無理だと言っているので…それなら、気にしません…

    両面スキャンでのみ可能です
    最初のパス、構造化ツリー配列。このようにして、子ノードの数を数えることができます
    2回目は配列が出力されます

    笑 具体的なコードを教えてもらえますか?

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート