wikimedia/html-formatter

通过封装libxml2并绕过其无数错误,对HTML进行转换。

4.1.0 2024-03-13 16:33 UTC

This package is auto-updated.

Last update: 2024-09-11 00:07:27 UTC


README

HtmlFormatter 是一个从 MediaWiki 分离出来的库,允许您将 HTML 加载到 DomDocument 中,对其进行操作,然后返回一个 HTML 字符串。

使用方法

use HtmlFormatter\HtmlFormatter;
// Load HTML that already has doctype and stuff
$formatter = new HtmlFormatter( $html );

// ...or one that doesn't have it
$formatter = new HtmlFormatter( HtmlFormatter::wrapHTML( $html ) );

// Add rules to remove some stuff
$formatter->remove( 'img' );
$formatter->remove( [ '.some_css_class', '#some_id', 'div.some_other_class' ] );
// Only the above syntax is supported, not full CSS/jQuery selectors

// These tags get replaced with their inner HTML,
// e.g. <tag>foo</tag> --> foo
// Only tag names are supported here
$formatter->flatten( 'span' );
$formatter->flatten( [ 'code', 'pre' ] );

// Actually perform the removals
$formatter->filterContent();

// Direct DomDocument manipulations are possible
$formatter->getDoc()->createElement( 'p', 'Appended paragraph' );

// Get resulting HTML
$processedHtml = $formatter->getText();

许可证

版权 2011-2024 MediaWiki 贡献者

本程序是免费软件;您可以在自由软件基金会发布的 GNU 通用公共许可证的条款下重新分发和/或修改它;许可证版本可以是 2 版,也可以是您选择的任何较新版本。

本程序分发的目的是希望它有用,但没有任何保证;甚至没有关于其适销性或适用于特定用途的暗示性保证。有关详细信息,请参阅 GNU 通用公共许可证。

您应该已经收到一份 GNU 通用公共许可证副本;如果没有,请写信给自由软件基金会,Inc.,51 Franklin Street,第五层,波士顿,MA 02110-1301,USA。 http://www.gnu.org/copyleft/gpl.html