- Minimum PHP version bumped to 7.2
- Remove
__invoke
method fromDocument
,Element
andDocumentFragment
that was deprecated early - Remove magic property
Element::$tag
. UsetagName()
method instead - Rename
Element::getDocument()
toownerDocument()
- Add
Node::setInnerXml()
method (i. e. forElement
andDocumentFragment
too)
- Fix a bug when a call of Element::previousSibling() with selector returns a previous sibling when there is not matching element
- Add support of multiple pseudoclasses (#125)
- Handle nested pseudo-classes with expression correctly
- Fix parsing of a style property in "style" attribute when the value contains a colon
- Fix deprecation notice in PHP 8 for
libxml_disable_entity_loader
- Add
Node::insertSiblingBefore()
andNode::insertSiblingAfter()
methods for inserting sibling nodes
- Add support of document fragments
- Fix an exception when selecting comment element with XPath
- Add support of
DOMCdataSection
nodes - Add methods
createTextNode()
,createComment()
,createCdataSection()
to the Document class
- Add
Element::innerXml()
method
- Add
Element::outerHtml()
method - Add
Element::prependChild()
method - Add
Element::insertBefore()
andElement::insertAfter()
methods - Add
Element::style()
method for more convenient inline styles manipulation - Add
Element::classes()
method for more convenient class manipulation
- Many fixes and improvements
- Fix bug with unregistered PHP functions in XPath in
Document::has()
andDocument::count()
methods
- Add
Element::isElementNode()
method - Add ability to retrieve only specific attributes in
Element::attributes()
method - Add
Element::removeAllAttributes()
method - Add ability to specify selector and node type in
Element::previousSibling()
andElement::nextSibling()
methods - Add
Element::previousSiblings()
andElement::nextSiblings()
methods - Many minor fixes and improvements
- Fix bug with XML document loading
- Fix issue #85
- Use
mb_convert_encoding()
in the Encoder if it is available
- Add
Element::removeChild()
andElement::removeChildren()
methods - Fix bug in
Element::matches()
method Element::matches()
method now returns false if node is notDOMElement
- Add
Element::hasChildren()
method
- Fix bug in setInnerHtml: can't rewrite existing content
- Throw
InvalidSelectorException
instead ofInvalidArgumentException
when selector is empty
- Fix attributes
ends-with
XPath - Method
Element::matches()
now can check children nodes
- Fix HTML saving mechanism
- Throw
InvalidSelectorException
instead ofRuntimeException
in Query class
- Add ability to search in owner document using current node as context
- Bugs fixed
- Methods
Document::appendChild()
andElement::appendChild()
now return appended node(s) - Add ability to search elements in context
- Bugs fixed
- Add
Element::getLineNo()
method
- Fix issue #55
- Add support of
DOMComment
- Add ability to create an element by selector
- Add closest method
- Add method
Element::isTextNode()
- Many minor fixes
- Add ability to check that element matches selector
- Add ability counting nodes by selector
- Many minor fixes
- Small fix
- Bug fixes
- Add support of ~ selector
- Add ability to direct search by CSS selector
- Add setInnerHtml method
- Add attributes method
- Add support of text nodes
- Bug fix
- Fixed behavior of nth-child pseudo class
- Add nth-of-type pseudo class
- Add pseudo class has and more attribute options
- Bug fixes
- Add methods
previousSibling
,nextSibling
,child
,firstChild
,lastChild
,children
,getDocument
to the Element - Changed behavior of parent method. Now it returns parent node instead of owner document
- Bug fix
- Added ability to get an element attribute by CSS selector
- Added handling of
DOMText
andDOMAttr
inDocument::find()
- Added ability to get inner HTML
- Added the ability to pass options when load HTML or XML
- Added the ability to pass an array of nodes to appendChild
- Added the ability to pass options when converting to HTML or XML
- Added the ability to add child elements to the element
- Added support for XML
- Added the ability to search element by part of attribute name or value
- Added support for pseudo-class "contains"
- Added the ability to clone a node
- Added ability to remove and replace nodes
- Added ability to specify encoding when converting the element into the document
- Fixed problem with incorrect encoding
- Added ability to set the value of the element
- Added ability to specify encoding when creating document
- Added the ability to specify the return type element (
DiDom\Element
orDOMElement
)
- Bug fixed
- Bugs fixed
- Added the ability to pass element attributes in the constructor
- Bugs fixed
- Bugs fixed
- Added the ability to compare Element\Document
- Added the ability to format HTML code of the document when outputting
- Added cache control
- Converter from CSS to XPath replaced by faster
- First release