php如何将N个ul标签下li标签的内容依次一个一个输出,有代码,求大神修改
<ul><li>你好</li><li>我好</li><li>他好</li></ul><ul><li>张三</li><li>李四</li></ul><ul><li>鸡</l...
<ul>
<li>
你好
</li>
<li>
我好
</li>
<li>
他好
</li>
</ul>
<ul>
<li>
张三
</li>
<li>
李四
</li>
</ul>
<ul>
<li>
鸡
</li>
<li>
鸭
</li>
<li>
兔
</li>
<li>
狗
</li>
</ul>
假设$redate获得了以上内容
我希望的结果是输出
你好 张三 鸡 我好 李四 鸭 他好 兔 狗
像这样依次输出,而且ul里面的li数量是不定的,求大神指点迷津
preg_match_all( "/\<ul\>(.*?)\<\/ul\>/is", $redate, $uls );
for($i=0;$i<count($items[1]);$i++)
{
preg_match_all( "/\<li\>(.*?)\<\/li\>/is", $uls[1][$i], $lis );
//真不知道下一步怎么写了
} 展开
<li>
你好
</li>
<li>
我好
</li>
<li>
他好
</li>
</ul>
<ul>
<li>
张三
</li>
<li>
李四
</li>
</ul>
<ul>
<li>
鸡
</li>
<li>
鸭
</li>
<li>
兔
</li>
<li>
狗
</li>
</ul>
假设$redate获得了以上内容
我希望的结果是输出
你好 张三 鸡 我好 李四 鸭 他好 兔 狗
像这样依次输出,而且ul里面的li数量是不定的,求大神指点迷津
preg_match_all( "/\<ul\>(.*?)\<\/ul\>/is", $redate, $uls );
for($i=0;$i<count($items[1]);$i++)
{
preg_match_all( "/\<li\>(.*?)\<\/li\>/is", $uls[1][$i], $lis );
//真不知道下一步怎么写了
} 展开
2个回答
展开全部
运行结束后,输出的第二行是你要的效果
preg_match_all( "/\<ul\>(.*?)\<\/ul\>/is", $redate, $uls );
$n=1;
for($i=0;$i<count($uls[1]);$i++) {
preg_match_all( "/\<li\>(.*?)\<\/li\>/is", $uls[1][$i], $lis[$i]);
if($n<count($lis[$i][1]))$n=count($lis[$i][1]);
}
echo "<br/>";
for($i=0;$i<count($lis);$i++){
for($j=0;$j<count($lis[$i][1]);$j++)
echo $lis[$i][1][$j]." ";
}
echo "<br/>";
for($j=0;$j<$n;$j++)
for($i=0;$i<count($lis);$i++){
if(isset($lis[$i][1][$j]))
echo $lis[$i][1][$j]." ";
}
2014-09-06
展开全部
追问
网友们,这是病毒,千万不要下载
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询