28、PHP 8.4 新特性 - PHP8.4 新的 ext-dom 功能和 HTML5 支持

作者: 温新

图书: 【PHP 8.4 新特性】

阅读: 174

时间: 2025-01-18 09:41:24

文档:https://www.php.net/manual/zh/migration84.new-features.php#migration84.new-features.dom

PHP 8.4 在 ext-dom 扩展中带来了一些重要的改进和功能增强,尤其是对 HTML5 的支持。这些更新不仅提高了 DOM 扩展的功能性,还让开发者能够更加方便地操作现代 HTML5 文档结构,并解决了一些与 HTML5 标签和属性相关的问题。

ext-dom 扩展概述

ext-dom 扩展提供了一个接口,用于操作和处理 XMLHTML 文档中的元素和属性。PHP 通过 DOMDocument 类提供了丰富的 API,允许开发者解析、操作和生成 XML 和 HTML 文档。它是基于 DOM (Document Object Model) 规范的,提供了面向对象的方式来处理 XML/HTML。

在 PHP 8.4 中,ext-dom 扩展的一个重要更新是增加了对 HTML5 标准的支持。这使得 PHP 开发者能够更加准确地处理 HTML5 文档,特别是在处理新的 HTML5 标签和属性时。

<?php

declare(strict_types=1);

$dom = Dom\HTMLDocument::createFromString(
    <<<HTML
        <main>
            <article>PHP 8.4 is a feature-rich release!</article>
            <article class="featured">PHP 8.4 adds new DOM classes that are spec-compliant, keeping the old ones for compatibility.</article>
        </main>
        HTML,
    LIBXML_NOERROR,
);

$node = $dom->querySelector('main > article:last-child');
var_dump($node->classList->contains("featured")); // bool(true)
请登录后再评论