ホームページ >バックエンド開発 >PHPチュートリアル >PHP 無限分類テーブルを div に変換

PHP 無限分類テーブルを div に変換

WBOY
WBOYオリジナル
2016-06-13 12:49:40876ブラウズ

PHP 無限分類テーブルを div

に変換 参考URL
http://www.qunfei.com/htmls/webdevelop/php/2012/0116/819.html


function dafenglei_arr($m,$id)<br />
{<br />
	global $class_arr;<br />
	global $ppid;<br />
	if($id=="") $id=0;<br />
	$n = str_pad('',$m,'-',STR_PAD_RIGHT);<br />
	$n = str_replace("-","  ",$n);<br />
	for($i=0;$i<count($class_arr);$i++){<br />
<br />
             <br />
		if($class_arr[$i]['classFID']==$id){<br />
		echo "<tr>\n";<br />
		echo "<td height=\"28\" class=\"font\">".$n."|--<a href=\"?action=edit&amp;id=".$class_arr[$i]['classid']."\">".$class_arr[$i]['className'].$m."</a></td>\n";<br />
		echo "</tr>\n";		<br />
			dafenglei_arr($m+1,$class_arr[$i]['classid']);<br />
		}<br />
		<br />
	}<br />
	<br />
}



出力形式は
です。 a34de1251f0d9fe1e645927f19a896e8
b6c5a531a458a2e790c1fd6421739d1c  列 1b90dd5946f0946207856a8a37f441edf
    列 1-1b90dd5946f0946207856a8a37f441edf
    列 1-2b90dd5946f0946207856a8a37f441edf
    列 1-3b90dd5946f0946207856a8a37f441edf
      列 1-3-1b90dd5946f0946207856a8a37f441edf
fd273fcf5bcad3dfdad3c41bd81ad3e5



次に、それを
に変換したいと思います。
7b52d562e8322a018fbee61dd13aa994
bc4efc6a160fae226e28e3d7a57838655060fca679fa3c3c8da1817bde6f81fd列 15db79b134e9f6b82c0b36e0489ee08ed
ff6d136ddc5fdfeffaf53ff6ee95f185
25edfb22a4f469ecb59f1190150159c61ed536a7057a983ba7dff7cabdeb91b27d6be756a4f7ccef8dff9bc97d439609列 1-154bdf357c58b8a65c66d7c19c8e4d1145db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
25edfb22a4f469ecb59f1190150159c6f20a85e8b721cb35abbb9d6d95992bfd7d6be756a4f7ccef8dff9bc97d439609列 1-254bdf357c58b8a65c66d7c19c8e4d1145db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
25edfb22a4f469ecb59f1190150159c65060fca679fa3c3c8da1817bde6f81fd列 1-35db79b134e9f6b82c0b36e0489ee08ed
ff6d136ddc5fdfeffaf53ff6ee95f185
25edfb22a4f469ecb59f1190150159c61ed536a7057a983ba7dff7cabdeb91b27d6be756a4f7ccef8dff9bc97d439609列 1-3-154bdf357c58b8a65c66d7c19c8e4d1145db79b134e9f6b82c0b36e0489ee08edbed06894275b65c1ab86501b08a632eb
929d1f5ca49e04fdcb27f9465b944689
bed06894275b65c1ab86501b08a632eb

4c451ac472f594f6a35ff2ca849a32a4......etcbed06894275b65c1ab86501b08a632eb

929d1f5ca49e04fdcb27f9465b944689


-----解決策---------
$ar = array (<br />
  2 => <br />
  array (<br />
    'classid' => '6',<br />
    'classfid' => '0',<br />
    'classname' => '栏目一',<br />
  ),<br />
  1 => <br />
  array (<br />
    'id' => '7',<br />
    'classfid' => '6',<br />
    'classname' => '栏目1-1',<br />
  ),<br />
  0 => <br />
  array (<br />
    'classid' => '10',<br />
    'classfid' => '7',<br />
    'classname' => '栏目1-1-1',<br />
  ),<br />
);<br />
<br />
echo '<ul>';<br />
foreach($ar as $item) {<br />
  if($item['classfid'] == 0) $deep = 0;<br />
  $t = substr_count($item['classname'], '-');<br />
  if($t < $deep) echo '</li></ul>';<br />
  if($t > $deep) echo '<ul>';<br />
  echo '<li>'.$item['classname'];<br />
  $deep = $t;<br />
}<br />
while($deep--)  echo '</li></ul>';<br />
ff6d136ddc5fdfeffaf53ff6ee95f185 ;li>列 1
  • 列 1-1
    • 列 1-1-1

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。