ホームページ >バックエンド開発 >PHPチュートリアル >PHP の DOM 実装を使用して DOMNode の innerHTML を取得するにはどうすればよいですか?

PHP の DOM 実装を使用して DOMNode の innerHTML を取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-29 12:54:11987ブラウズ

How to Get the innerHTML of DOMNodes Using PHP's DOM Implementation?

PHP DOM 実装で DOMNode の innerHTML を取得する

PHP の DOM 実装を使用する場合、innerHTML を取得するために使用できるメソッドを理解することが重要です。 DOMNode の。次の調査では、この一般的なタスクに対する包括的なソリューションを提供します。

PHP 実装:

特定の DOMNode の innerHTML を取得するために、PHP は 2 つの主要な関数を提供します。

  • innerHTML (カスタムFunction):

PHP マニュアル ユーザー ノート #89718 では、このカスタム関数の更新バージョンが提供されています:

function DOMinnerHTML(DOMNode $element)
{
    $innerHTML = "";
    $children  = $element->childNodes;

    foreach ($children as $child)
    {
        $innerHTML .= $element->ownerDocument->saveHTML($child);
    }

    return $innerHTML;
}

この関数は、saveHTML を利用して、DOMNode の子を再帰的に走査します。 () はそれぞれの HTML 表現を取得します。 child.

  • ownerDocument->saveHTML():

このメソッドは、指定された DOMNode の HTML 表現を返します。 DOMNode の ownerDocument で使用して、innerHTML を取得できます。

使用例:

DOMinnerHTML() 関数の使用例を示します:

$dom = new DOMDocument();
$dom->preserveWhiteSpace = false;
$dom->formatOutput       = true;
$dom->load($html_string);

$domTables = $dom->getElementsByTagName("table");

// Iterate over DOMNodeList (Implements Traversable)
foreach ($domTables as $table)
{
    echo DOMinnerHTML($table);
}

このスクリプトは、HTML 文字列からすべてのテーブルを取得し、その innerHTML をDOMinnerHTML() 関数。

以上がPHP の DOM 実装を使用して DOMNode の innerHTML を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。