wa72/html-pretty-min

在DOM树上工作的HTML压缩器和缩进器

v0.2.0 2018-03-08 20:39 UTC

This package is auto-updated.

Last update: 2024-09-18 03:48:01 UTC


README

Build Status Latest Version

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