php循环的一个问题
有这样一个数组
- PHP code
Array( [0] => Array ( [id] => 1 [name] => ~core [title] => 项目 [_child] => Array ( [0] => Array ( [id] => 2 [name] => home [title] => 主页分组 [_child] => Array ( [0] => Array ( [id] => 3 [name] => index [title] => 首页模块 [_child] => Array ( [0] => Array ( [id] => 5 [name] => index [title] => 项目首页 ) ) ) [1] => Array ( [id] => 4 [name] => user [title] => 用户模块 [_child] => Array ( [0] => Array ( [id] => 6 [name] => index [title] => 用户首页 ) [1] => Array ( [id] => 7 [name] => login [title] => 登陆首页 ) [2] => Array ( [id] => 8 [name] => logout [title] => 登出 ) ) ) ) ) [1] => Array ( [id] => 9 [name] => company [title] => 公司分组 [_child] => Array ( [0] => Array ( [id] => 11 [name] => index [title] => 公司模块 [_child] => Array ( [0] => Array ( [id] => 12 [name] => pub [title] => 测试 ) ) ) ) ) [2] => Array ( [id] => 10 [name] => user [title] => 用户分组 [_child] => Array ( [0] => Array ( [id] => 13 [name] => client [title] => 业务管理 [_child] => Array ( [0] => Array ( [id] => 16 [name] => index [title] => 业务增加页 ) ) ) [1] => Array ( [id] => 14 [name] => knowledge [title] => 文章首页 [_child] => Array ( [0] => Array ( [id] => 15 [name] => pub [title] => 文章发布 ) ) ) ) ) ) ))
请问HTML怎么输出 能达到底下图的这种效果?
[解决办法]
-.-
你能不能先用div+css把框架搭出来?
剩下的不就是往框里边塞div吗。
[解决办法]
你是不会循环呢,还是不会输出排版
[解决办法]
- PHP code
function foo($ar) { echo '<ul>'; foreach($ar as $v) { echo "<li>$v[id] $v[name] $v[title] "; if(isset($v['_child'])) foo($v['_child']); echo '</li>'; } echo '</ul>';}//设你的数组名为 $array,则foo($array);
[解决办法]
循环的时候判断遍历出来的是否还是数组,如果是则继续遍历
[解决办法]
[解决办法]
慢慢研究,总会出来滴
[解决办法]
[解决办法]
这个用递归是最好的方法.用while也可以,用递归取出数据,把每个图示中的循环放在一个数组里.
这样就有三个数组了吧
循环输出数组
左边 中间 右边