Thinkphp 引入ZendFrame的DOM Query 扩展

浏览:2944 最后更新:2015-01-20 12:24 分类:驱动 关键字: 类库 DOM Query
ZF的DOM Query组件强大好用,在引入进TP的时候需要进行一些改动,主要是Exception类的改动
Zend_Dom_Query 为利用 XPath 或 CSS 选择器来查询 xml 和 (X)HTML 文档提供了机制。其实就是使PHP像Jquery的$选择器一样来操作HTML文档。
ZF版本为 const VERSION = '1.12.9';  下载好ZF后,复制里面的DOM文件夹所有内容到TP应用的thinkphp/Extend/Vendor/Zend 目录下,如图:

但是还需要复制ZF框架的xml文件里的两个php文件到TP里,改名为xml.php和xmlexception.php,主要是用来处理xml报错的。:

改动Query.php 里面的33、34行如下:

大功告成,在Action里面使用:

    public function demo(){
        Vendor('Zend.Dom.Query');
        $html = '<div><table>
                <tr>
                    <td class="foo">
                        <div>
                            Lorem ipsum <span class="bar">
                                <a href="/foo/bar" id="one">One</a>
                                <a href="/foo/baz" id="two">Two</a>
                                <a href="/foo/bat" id="three">Three</a>
                                <a href="/foo/bla" id="four">Four</a>
                            </span>
                        </div>
                    </td>
                </tr>
            </table>
        </div>';
        $dom = new Zend_Dom_Query($html);
        $results = $dom->query('.foo .bar a');
        $count = count($results); // get number of matches: 4
        foreach ($results as $result) {
            echo $result->nodeValue."<br/>";
        }

    }
评论( 相关
后面还有条评论,点击查看>>