在PHP中是否有一个JQuery DOM操纵器/ CSS选择器等效类?

时间:2010-04-27 14:37:28

标签: php jquery css-selectors dom-manipulation sizzle

我知道我可以使用DOMDocumentDOMXPath来操作XML文件。但是,我真的很喜欢JQuery,如果在PHP世界中有更多像JQuery这样的东西我可以用来进行服务器端操作,那将会很棒。

  

注意:我只对此感兴趣   JQuery选择和操作DOM,而不是全部   JQuery的其他部分(我想   你可以说Pop和Sizzle   份)。

<小时/> 的更新
看起来有一个等价的选择器函数,但就操作函数而言,我想我必须坚持使用DOMDocument。

4 个答案:

答案 0 :(得分:4)

您可以使用phpQuery

它描述如下:phpQuery是一个基于jQuery JavaScript库的PHP5服务器端,可链接,CSS3选择器驱动的文档对象模型(DOM)API。

答案 1 :(得分:3)

好吧,排除你使用CSS选择器引擎留下的所有JavaScript特定内容:

http://framework.zend.com/manual/en/zend.dom.query.html

享受:)

答案 2 :(得分:2)

是的,HtmlPageDom完全符合您的要求。

答案 3 :(得分:1)

@retro:他要求的是像sizzle一样的库,它使用PHP作为语言而不是javascript,你所说的“没有改变写它”是错误的,它只是代码,你可以把它写成你想要的很多。

然而,我认为问题是在浏览器中运行的javascript会让你获得一个可以访问DOM系统的+1,这可以帮助你自动创建大量dom节点/ html节点,而不必做他们自己。

在php中,DOM很痛苦,jquery很高兴地将它隐藏起来,因为javascript的工作方式与PHP不同,它可以不费吹灰之力地做到这一点,但PHP无法访问浏览器DOM并拥有不同的操作方法,这更痛苦。

这并不是说它不可能,因为它只是它不是那么容易,有时它似乎有不同的原因似乎没有明确的原因,我相信它可能是PHP DOM内部使用libXML或类似的东西,并在内部暴露了太多的库,因此PHP混乱了C库语义。

我认为你应该看一下phpQuery(https://github.com/TobiaszCudnik/phpquery),甚至更好地在积极开发中查看QueryPath(http://querypath.org)。

然而,不要指望它们像javascript jquery库一样容易,因为它不是,不幸的是......