nickcernis/html-to-markdown
Convert HTML into clean, readable Markdown in PHP. Parse tags and structure into Markdown output with configurable rules, custom converters, and strong defaults—handy for scraping, email content, CMS migrations, and turning rich text into Markdown for storage or editing.
<pre> tags with attributes not being parsed (#215, #238)Element::getValue() not handling possible nullsstrip_placeholder_links option to strip <a> tags without href attributes (#196)ElementInterface:
hasParent()getNextSibling()getPreviousSibling()getListItemLevel()PreConverterInterface to allow converters to perform any necessary pre-parsingHtmlConverter::convert() may now throw a \RuntimeException when unexpected DOMDocument-related errors occur<code> tags (#174, #178)HtmlConverterInterface) for the main HtmlConverter classitalic_style option now defaults to '*' so that in-word emphasis is handled properly (#75)<code> and <pre> tags not converting to blocks or inlines properly (#26, #70, #102, #140, #161, #162)<div> elementsbold_style and italic_style options have been deprecated (#75)setOptions() function for chainable calling (#149)list_item_style_alternate option for converting every-other list with a different character (#155)<pre> tags (#145)hard_break configuration option (#112, #115)HtmlConverter can now be instantiated with an Environment (#118)br elements (#116, #117)<pre> and <pre><code> conversions to use backticks instead of indendation (#102)<code> tags nested in <pre> was not converted properly (#70, #102)preg_replace so it wouldn't break UTF-8 characters (#79)This release adds a new CLI converter!
bin/html-to-markdown script_ (#58).styleci.yml and CONTRIBUTING.md are no longer included in distributions (#50)This release changes the visibility of several methods/properties. #42 and #43 brought to light that some visiblities were not ideally set, so this releases fixes that. Moving forwards this should reduce the chance of introducing BC-breaking changes.
HtmlConverter::getEnvironment() method to expose the Environment (#42, #43)Environment::addConverter() from protected to public, enabling custom converters to be added (#42, #43)HtmlConverter::createDOMDocument() from protected to privateElement::nextCached from protected to privateEnvironment class finalequals method to Element to check for equalityHow can I help you explore Laravel packages today?