从字符串中解析 HTML

PHP 实现了一个符合 DOM Level 2 的解析器,允许你使用熟悉的方法(如 getElementById()appendChild())处理 HTML。

$html = '<html><body><span id="text">Hello, World!</span></body></html>';

$doc = new DOMDocument();
libxml_use_internal_errors(true);
$doc->loadHTML($html);

echo $doc->getElementById("text")->textContent;

输出:

Hello, World!

请注意,PHP 将发出有关 HTML 任何问题的警告,尤其是在导入文档片段时。要避免这些警告,在导入 HTML 之前通过调用 libxml_use_internal_errors()告诉 DOM 库(libxml)处理自己的错误。然后,你可以根据需要使用 libxml_get_errors()来处理错误。