diff --git a/composer.json b/composer.json index c75e0e46..72afdfdc 100644 --- a/composer.json +++ b/composer.json @@ -1,20 +1,24 @@ { - "name": "paquettg/php-html-parser", + "name": "a2design-inc/php-html-parser", "type": "library", - "version": "1.7.0", + "version": "1.7.6", "description": "An HTML DOM parser. It allows you to manipulate HTML. Find tags on an HTML page with selectors just like jQuery.", "keywords": ["html", "dom", "parser"], - "homepage": "https://github.com/paquettg/php-html-parser", + "homepage": "https://a2design-inc/paquettg/php-html-parser", "license": "MIT", "authors": [ { "name": "Gilles Paquette", "email": "paquettg@gmail.com", "homepage": "http://gillespaquette.ca" + }, + { + "name": "Vladislav Bezverkhiy", + "email": "rabbiabramg@gmail.com" } ], "require": { - "php": ">=5.6", + "php": ">=5.4", "paquettg/string-encode": "~0.1.0" }, "require-dev": { @@ -23,7 +27,7 @@ "mockery/mockery": "~0.9.0" }, "autoload": { - "psr-0": { + "psr-0": { "PHPHtmlParser": "src/" } }, diff --git a/src/PHPHtmlParser/Dom.php b/src/PHPHtmlParser/Dom.php index f3e17ff9..34514d13 100644 --- a/src/PHPHtmlParser/Dom.php +++ b/src/PHPHtmlParser/Dom.php @@ -88,6 +88,7 @@ class Dom 'base', 'embed', 'spacer', + '!--' ]; /** @@ -373,7 +374,10 @@ protected function clean($str) $str = mb_eregi_replace("", '', $str); // strip out comments - $str = mb_eregi_replace("", '', $str); + if (!$this->options->get('allowComments')) { + $str = mb_eregi_replace("", '', $str); + } + $str = mb_eregi_replace("", '', $str); // strip out cdata $str = mb_eregi_replace("", '', $str); @@ -394,7 +398,9 @@ protected function clean($str) $str = mb_eregi_replace("(<\?)(.*?)(\?>)", '', $str); // strip smarty scripts - $str = mb_eregi_replace("(\{\w)(.*?)(\})", '', $str); + if (!$this->options->get('allowBladeTags')) { + $str = mb_eregi_replace("(\{\w)(.*?)(\})", '', $str); + } return $str; } @@ -503,7 +509,7 @@ protected function parseTag() // attributes while ($this->content->char() != '>' && - $this->content->char() != '/') { + $this->content->char() != '/' && $tag !== '!--') { $space = $this->content->skipByToken('blank', true); if (empty($space)) { $this->content->fastForward(1);