jQuery-like selectors for PHP DOMDocument
css, css-selectors, jquery, php, xml
Solution
If you want to manipulate the DOM ala Jquery, PHPQuery is something for you.
http://code.google.com/p/phpquery/
A simple example of what you can do with it.
// almost everything can be a chain
$li = null;
$doc['ul > li']
->addClass('my-new-class')
->filter(':last')
->addClass('last-li');
Problem
I'm working with a `DOMDocument`, and I'm wondering if there exists some way of using CSS-like selectors to select nodes like we would in jQuery. Example situation: I'm parsing an XML file, one snippet of which looks like this: ``` <gesmes:Envelope> <gesmes:subject>Reference rates</gesmes:subject> <gesmes:Sender> <gesmes:name>European Central Bank</gesmes:name> </gesmes:Sender> <Cube> <Cube time="2009-07-13"> <Cube currency="USD" rate="1.3975"/> <Cube currency="JPY" rate="129.03"/> <Cube currency="BGN" rate="1.9558"/> <Cube currency="CZK" rate="26.028"/> </Cube> </Cube> </gesmes:Envelope> ``` Accessing this structure with jQuery-like selectors would be dead simple. For example, I could use ``` $("Cube[currency]") ``` to retrieve all the `Cube` elements with the 'currency' attribute. But how can I do the same thing with PHP's `DOMDocument`? I'd like to select elements which have an attribute, or have a particular attribute value.