PackageTrack
Sign in Get early access

imangazaliev/didom

Simple and fast HTML parser

2.0.1 2.6M downloads/mo #3667 most downloaded on Packagist Imangazaliev/DiDOM

What this package is like to depend on

Last release 3 years ago

no release in 18 months

Ships fairly regularly

a new release about every 6 months

Nearly every release is documented

notes for 55 of 61 stable releases

Nothing withdrawn

no release was ever pulled

11 years old

61 releases · first in 2015

0 releases in the last 12 months

see the full history below

Release timeline

61 releases · Aug 2015 to Mar 2023
2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 60 of 61
  1. 2.0.1 05 Mar 2023
    Release notes
    • Fix warning PHP Deprecated: mb_convert_encoding(): Handling HTML entities via mbstring is deprecated
    Open source →
  2. 1.16.4 09 Feb 2021
    Release notes
    • Handle nested pseudo-classes with expression correctly
    Open source →
    Release notes
    • Handle nested pseudo-classes with expression correctly
    Open source →
  3. 1.16.3 09 Feb 2021
    Release notes
    • Fix parsing of a style property in "style" attribute when the value contains a colon
    Open source →
    Release notes
    • Fix parsing of a style property in "style" attribute when the value contains a colon
    Open source →
  4. 1.16.2 29 Jan 2021
    Release notes

    Add support for extra XML namespaces

    Open source →
  5. 1.16.1 16 Nov 2020
    Release notes
    • Fix deprecation notice in PHP 8 for libxml_disable_entity_loader
    Open source →
    Release notes
    • Fix deprecation notice in PHP 8 for libxml_disable_entity_loader
    Open source →
  6. 1.14.1 17 Jan 2019
    Release notes
    • Fix an exception when selecting comment element with XPath
    • Add support of DOMCdataSection nodes
    • Add methods createTextNode(), createComment(), createCdataSection() to the Document class
    Open source →
  7. 1.11.1 16 Aug 2017
    Release notes
    • Fix bug with unregistered PHP functions in XPath in Document::has() and Document::count() methods
    Open source →
  8. 1.10.6 28 Jun 2017
    Release notes
    • Fix bug with XML document loading
    Open source →
  9. 1.10.5 19 Jun 2017
    Release notes
    • Fix issue #85
    Open source →
  10. 1.10.4 11 Jun 2017
    Release notes
    • Use mb_convert_encoding() in the Encoder if it is available
    Open source →
  11. 1.10.3 20 May 2017
    Release notes
    • Add Element::removeChild() and Element::removeChildren() methods
    • Fix bug in Element::matches() method
    • Element::matches() method now returns false if node is not DOMElement
    • Add Element::hasChildren() method
    Open source →
  12. 1.10.2 15 May 2017
    Release notes
    • Fix bug in setInnerHtml: can't rewrite existing content
    • Throw InvalidSelectorException instead of InvalidArgumentException when selector is empty
    Open source →
  13. 1.10.1 14 May 2017
    Release notes
    • Fix attributes ends-with XPath
    • Method Element::matches() now can check children nodes
    Open source →
  14. 1.9.1 02 Feb 2017
    Release notes
    • Add ability to search in owner document using current node as context
    • Bugs fixed
    Open source →
  15. 1.9.0 31 Jan 2017
    Release notes
    • Methods Document::appendChild() and Element::appendChild() now return appended node(s)
    • Add ability to search elements in context
    Open source →
  16. 1.8.8 26 Nov 2016
    Release notes
    • Bugs fixed
    Open source →
  17. 1.8.7 13 Nov 2016
    Release notes
    • Add Element::getLineNo() method
    Open source →
  18. 1.8.6 30 Oct 2016
    Release notes
    • Fix issue #55
    Open source →
  19. 1.8.5 25 Oct 2016
    Release notes
    • Add support of DOMComment
    Open source →
  20. 1.8.4 22 Oct 2016
    Release notes
    • Add ability to create an element by selector
    • Add closest method
    Open source →
  21. 1.8.3 19 Oct 2016
    Release notes
    • Add method Element::isTextNode()
    • Many minor fixes
    Open source →
  22. 1.8.2 16 Oct 2016
    Release notes
    • Add ability to check that element matches selector
    • Add ability counting nodes by selector
    • Many minor fixes
    Open source →
  23. 1.8.1 14 Oct 2016
    Release notes
    • Small fix
    Open source →
  24. 1.7.4 02 Sep 2016
    Release notes
    • Add support of text nodes
    Open source →
  25. 1.7.3 28 Jul 2016
    Release notes
    • Bug fix
    Open source →
  26. 1.7.2 27 Jul 2016
    Release notes
    • Fixed behavior of nth-child pseudo class
    • Add nth-of-type pseudo class
    Open source →
  27. 1.7.1 24 Jul 2016
    Release notes
    • Add pseudo class has and more attribute options
    Open source →
  28. 1.7.0 01 Jul 2016
    Release notes
    • 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
    Open source →
  29. 1.6.8 06 Jun 2016
    Release notes
    • Bug fix
    Open source →
  30. 1.6.7 22 Apr 2016

    Nothing published for this version

  31. 1.6.6 12 Apr 2016

    Nothing published for this version

  32. 1.6.5 07 Apr 2016
    Release notes
    • Added ability to get an element attribute by CSS selector
    Open source →
  33. 1.6.4 28 Mar 2016
    Release notes
    • Added handling of DOMText and DOMAttr in Document::find()
    Open source →
  34. 1.6.3 16 Mar 2016
    Release notes
    • Added ability to get inner HTML
    Open source →
  35. 1.6.2 09 Mar 2016
    Release notes
    • Added the ability to pass options when load HTML or XML
    Open source →
  36. 1.6.1 05 Mar 2016
    Release notes
    • 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
    Open source →
  37. 1.5.1 05 Jan 2016
    Release notes
    • Added ability to remove and replace nodes
    • Added ability to specify encoding when converting the element into the document
    Open source →
  38. 1.4.3 03 Nov 2015

    Nothing published for this version

  39. 1.4.2 25 Oct 2015

    Nothing published for this version

  40. 1.4.1 24 Oct 2015

    Nothing published for this version

  41. 1.3.2 15 Oct 2015
    Release notes
    • Bug fixed
    Open source →
  42. 1.3.1 07 Oct 2015
    Release notes
    • Bugs fixed
    • Added the ability to pass element attributes in the constructor
    Open source →
  43. 1.2.1 22 Sep 2015

    Nothing published for this version

  44. 2.0 08 May 2022
    Release notes

    Breaking changes

    • Minimum PHP version bumped to 7.2
    • Remove __invoke method from Document, Element and DocumentFragment that was deprecated early
    • Remove magic property Element::$tag. Use tagName() method instead
    • Rename Element::getDocument() to ownerDocument()

    What's new

    • Add Node::setInnerXml() method (i. e. for Element and DocumentFragment too)
    Open source →
    Release notes

    Breaking changes

    • Minimum PHP version bumped to 7.2
    • Remove __invoke method from Document, Element and DocumentFragment that was deprecated early
    • Remove magic property Element::$tag. Use tagName() method instead
    • Rename Element::getDocument() to ownerDocument()

    What's new

    • Add Node::setInnerXml() method (i. e. for Element and DocumentFragment too)
    Open source →
  45. 1.8 17 Sep 2016
    Release notes
    • Bug fixes
    • Add support of ~ selector
    • Add ability to direct search by CSS selector
    • Add setInnerHtml method
    • Add attributes method
    Open source →
  46. 1.6 18 Feb 2016
    Release notes
    • 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
    Open source →
  47. 1.5 07 Dec 2015
    Release notes
    • Fixed problem with incorrect encoding
    • Added ability to set the value of the element
    • Added ability to specify encoding when creating document
    Open source →
  48. 1.4 21 Oct 2015
    Release notes
    • Added the ability to specify the return type element (DiDom\Element or DOMElement)
    Open source →
  49. 1.3 26 Sep 2015
    Release notes
    • Bugs fixed
    Open source →
  50. 1.2 31 Aug 2015
    Release notes
    • Bugs fixed
    • Added the ability to compare Element\Document
    • Added the ability to format HTML code of the document when outputting
    Open source →
  51. 1.18 27 Jul 2021
    Release notes
    • Fix a bug when a call of Element::previousSibling() with selector returns a previous sibling when there is not matching element
    Open source →
    Release notes
    • Fix a bug when a call of Element::previousSibling() with selector returns a previous sibling when there is not matching element
    Open source →
  52. 1.17 26 Jul 2021
    Release notes
    • Add support of multiple pseudoclasses (#125)
    Open source →
    Release notes
    • Add support of multiple pseudoclasses (#125)
    Open source →
  53. 1.16 12 May 2020
    Release notes
    • Add Node::insertSiblingBefore() and Node::insertSiblingAfter() methods for inserting sibling nodes
    Open source →
    Release notes
    • Add Node::insertSiblingBefore() and Node::insertSiblingAfter() methods for inserting sibling nodes
    Open source →
  54. 1.15 21 Jan 2020
    Release notes
    • Add support of document fragments
    Open source →
    Release notes
    • Add support of document fragments
    Open source →
  55. 1.14 17 Dec 2018
    Release notes
    • Add Element::innerXml() method
    Open source →
  56. 1.13 08 Dec 2017
    Release notes
    • Add Element::outerHtml() method
    • Add Element::prependChild() method
    • Add Element::insertBefore() and Element::insertAfter() methods
    • Add Element::style() method for more convenient inline styles manipulation
    • Add Element::classes() method for more convenient class manipulation
    Open source →
  57. 1.12 28 Aug 2017
    Release notes
    • Many fixes and improvements
    Open source →
  58. 1.11 13 Aug 2017
    Release notes
    • 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() and Element::nextSibling() methods
    • Add Element::previousSiblings() and Element::nextSiblings() methods
    • Many minor fixes and improvements
    Open source →
  59. 1.10 14 May 2017
    Release notes
    • Fix HTML saving mechanism
    • Throw InvalidSelectorException instead of RuntimeException in Query class
    Open source →
  60. 1.1 23 Aug 2015
    Release notes
    • Added cache control
    • Converter from CSS to XPath replaced by faster
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive