编程

如何使用 PHP 将 HTML 转换成普通文本

633 2023-12-06 18:31:00

Hypertext PHP 包将 HTML 转换为纯文本,并出色地处理各种格式错误的 HTML。它的工作原理是将 HTML 字符串作为输入,并删除所有标记,留下纯文本:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>My Blog</title>
</head>
<body>
    <h1>Welcome to My Blog</h1>
    <p>This is a paragraph of text on my webpage.</p>
    <a href="https://blog.com/posts">Click here</a> to view my posts.
</body>
</html>

使用 Hypertext 的 Transformer 类,你可以像这样将 HTML 转换为纯文本:

use Stevebauman\Hypertext\Transformer;
 
// Pure text output
echo (new Transformer)->toText($input);
 
// Welcome to My Blog This is a paragraph of text on my webpage. Click here to view my posts.

假设您希望将所有内容转换为文本,但同时保留换行符和链接:

echo (new Transformer)
    ->keepLinks()
    ->keepNewLines()
    ->toText($input);
 
/*
Welcome to My Blog
This is a paragraph of text on my webpage.
<a href="https://blog.com/posts">Click Here</a> to view my posts.
*/

这是 hypertext 包的一系列重要特性:

  • 删除 CSS
  • 删除 scripts
  • 删除 headers
  • 删除非基于 HTML 的内容
  • 保留空格
  • 保留链接(可选)
  • 保留换行(可选)

你可以在 Github 上找到该包的完整详情:stevebauman/hypertext.

 

PHP