<div class=c1>
  <div class=c2>    <div class=c3>
       bbbbbb
    </div>
    aaaa
  </div>
  ccccc
</div>
<div></div>
<div></div>我想用PHP写个函数得到class=c1 的 div 里的内容。比如:function getstr($string,$start,$end){
   ????
   $str=?????;
   return $str;
}
echo getstr($html,"<div class=c1>","</div>")
也就是传一个标签的唯一字符串,得到他里面的内容。
不管DIV里面有什么内容或外面有什么内容。始终只得到这个DIV里面的内容。
该怎么写呢?

解决方案 »

  1.   

    楼主可以试试一个国外的类库 simple_html_dom 功能很强大,可以满足你的需求。如果html不复杂,也可以考虑用正则
      

  2.   


    JS直接实现的用下边代码
    <body onload="opt()">
    <div id=a1>这里显示id=2的内容</div>
    <div id=a2>div2显示内容</div>
    </body>
    <script type="text/javascript">
    function opt(){
    document.getElementById("a2").innerHTML=document.getElementById("a1").innerHTML;
    }
    </script>
    jQuery实现代码如下:
    <body>
    <div id=a1>这里显示id=2的内容</div>
    <div id=a2>div2显示内容</div>
    </body>
    <script type="text/javascript">
    $(function(){
    $("#a2").html($("#a1").html());
    })
    </script>
      

  3.   


    就是THML非常复杂,不能用正则。
      

  4.   


    JS我也会写,就是PHP不好写。
      

  5.   

    这玩艺,你要用PHP,加载整个页面,然后按HTML标记拆成树,然后再通过查找节点,最后读取需要节点的内容文本即可simple_html_dom就是这样子的