【PHP8.x】lastElementChildプロパティの使い方

lastElementChildプロパティの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

lastElementChildプロパティは、Dom\Documentオブジェクトが表すHTMLやXMLドキュメントにおいて、その「最後の子要素」を保持するプロパティです。このプロパティを使うことで、ドキュメントの構造の最上位に位置する要素ノードへ簡単にアクセスできます。

ここで言う「要素」とは、HTMLの<html>タグや<body>タグ、XMLのルート要素のように、タグで囲まれた構造体のことを指します。テキストノードやコメントノードは含まれません。例えば、標準的なHTMLドキュメントをDom\Documentオブジェクトとして読み込んだ場合、lastElementChildプロパティは通常、ドキュメント全体の親である<html>要素を返します。

このプロパティは、ドキュメントのコンテンツをプログラムで解析したり、特定の最上位要素にアクセスしてその内容を操作したりする際に非常に役立ちます。返される値はDom\Element型のオブジェクトですが、もしドキュメントに要素ノードが一つも存在しないような稀なケースではnullが返されます。ドキュメントの主要な構造に直接アクセスするための、基本的ながらも強力な機能です。

構文(syntax)

1<?php
2
3// HTML ドキュメント文字列を準備します。
4$htmlString = '
5<!DOCTYPE html>
6<html>
7<head>
8    <title>Sample Document</title>
9</head>
10<body>
11    <div>最初の要素</div>
12    <p>中央の要素</p>
13    <span>最後の要素</span>
14</body>
15</html>';
16
17// Dom\Document オブジェクトを作成します。
18$document = new Dom\Document();
19
20// HTML 文字列を Dom\Document オブジェクトに読み込みます。
21$document->loadHTML($htmlString);
22
23// Dom\Document の lastElementChild プロパティにアクセスし、
24// ドキュメントの直接の子要素の中で最後の要素ノードを取得します。
25// HTML ドキュメントの場合、これは通常 <html> 要素を指します。
26$lastElement = $document->lastElementChild;
27
28// 取得した要素が存在し、かつそれが Dom\Element のインスタンスである場合、そのタグ名を出力します。
29if ($lastElement instanceof Dom\Element) {
30    echo "ドキュメントの最後の子要素のタグ名: " . $lastElement->tagName; // 出力: html
31} else {
32    echo "ドキュメントに要素の子が見つかりませんでした。";
33}
34
35?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

?Dom\Element

このプロパティは、現在のDOM要素の最後の子要素を表すDom\Elementオブジェクト、または子要素が存在しない場合はnullを返します。

関連コンテンツ

関連プログラミング言語