wa72 / html-pretty-min
在DOM树上工作的HTML压缩器和缩进器
v0.2.0
2018-03-08 20:39 UTC
Requires
- php: >=5.4
- mrclay/jsmin-php: ^2.3
- symfony/options-resolver: >=2.3
- tubalmartin/cssmin: ^4
Requires (Dev)
- phpunit/phpunit: ^4|^5|^6|^7
README
HTML Pretty-Min 是一个PHP库,用于压缩和美化(缩进)HTML文档,直接在HTML文档的DOM树上进行操作。
目前具有以下功能
-
美化打印:
- 缩进块级元素,不缩进内联元素
-
压缩:
- 删除空白和换行符
- 使用 mrclay/jsmin-php 压缩嵌入的JavaScript
- 使用 tubalmartin/cssmin 压缩嵌入的CSS
- 当属性值为空时删除一些属性(默认为"style"和"class"属性)
- 删除注释,除了与一些给定的正则表达式匹配的注释(默认保留IE条件注释)
安装
HTML Pretty-Min 已在 Packagist 上列出。
composer require wa72/html-pretty-min
使用
<?php use Wa72\HtmlPrettymin\PrettyMin; $pm = new PrettyMin(); $output = $pm ->load($html) // $html may be a \DOMDocument, a string containing an HTML code, // or an \SplFileInfo pointing to an HTML document ->minify() ->saveHtml();
对于美化打印,请调用 indent()
方法而不是 minify()
方法。
注意:因为格式化是在DOM树上直接进行的,所以传递给 load()
方法的 DOMDocument 对象将被修改
$dom_document = new \DOMDocument('1.0', 'UTF-8'); $dom_document->loadHTML('<html>...some html code...</html>'); $pm->load($dom_document)->minify(); echo $dom_document->saveHTML(); // Will output the minified, not the original, document