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

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

作成日: 更新日:

基本的な使い方

textContentプロパティは、DOMCharacterDataクラスに属し、ノードのテキストコンテンツを保持するプロパティです。PHPのDOM拡張機能の一部として提供されており、ウェブページやXMLドキュメントの構造をプログラムで操作する際に利用されます。

このプロパティを使用すると、指定されたノード、およびそのすべての子孫ノードに含まれる純粋なテキストデータを、一つの連結された文字列として取得することができます。HTMLやXMLのタグ、コメント、処理命令などはすべて無視され、ユーザーが目にするであろうテキスト部分のみが抽出されます。これにより、要素内の装飾や構造に惑わされることなく、コンテンツそのものにアクセスすることが可能になります。例えば、ウェブページから特定の要素内の文章だけを効率的に抽出したい場合や、XMLデータから特定のノードが持つ純粋な値を取得したい場合などに大変便利です。

また、textContentプロパティには新しい文字列を設定することも可能です。このプロパティに文字列を設定すると、対象ノードの既存の子ノードはすべて削除され、新たに指定した文字列を内容とする単一のテキストノードが作成され、そのノードの子として追加されます。これにより、ノードのテキストコンテンツをシンプルかつ直接的に更新することができます。

DOMCharacterDataクラスは、テキストノード(DOMText)、コメントノード(DOMComment)、CDATAセクションノード(DOMCdataSection)といった、文字データを直接保持するノードの基底クラスです。そのため、textContentプロパティは、これらの種類のノードに対して一貫した方法でテキストコンテンツの取得や設定を行うための標準的な手段を提供します。これにより、DOMツリーの操作がより直感的で堅牢になります。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$element = $dom->createElement('example');
4$textNode = $dom->createTextNode('Hello, PHP DOM!');
5$element->appendChild($textNode);
6$dom->appendChild($element);
7
8// textContent プロパティを読み取る
9echo $textNode->textContent;
10
11// textContent プロパティを書き込む
12$textNode->textContent = 'Updated text content.';
13echo $textNode->textContent;
14?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

DOMCharacterDataノードに含まれるテキストコンテンツを文字列として返します。このプロパティは、ノードのtextContent属性の値を操作するために使用されます。

【PHP8.x】textContentプロパティの使い方 | いっしー@Webエンジニア