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

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

作成日: 更新日:

基本的な使い方

textContentプロパティは、DOMElementノードのテキストコンテンツを取得または設定するために使用できるプロパティです。このプロパティを使用することで、要素に含まれるテキストノードの値にアクセスしたり、変更したりすることができます。取得時には、要素の子孫にあるすべてのテキストノードを連結した文字列が返されます。設定時には、要素のすべての子ノードが削除され、指定された文字列を値とする新しいテキストノードが子ノードとして追加されます。

textContentプロパティは、innerHTMLプロパティと似ていますが、いくつかの重要な違いがあります。innerHTMLプロパティは、要素のHTMLマークアップを取得または設定するために使用され、文字列としてHTMLを解析します。一方、textContentプロパティはテキストコンテンツのみを扱い、HTMLマークアップを解析しません。そのため、textContentプロパティはinnerHTMLプロパティよりも安全であり、XSS(クロスサイトスクリプティング)攻撃のリスクを軽減することができます。また、textContentプロパティはinnerHTMLプロパティよりも高速に動作する場合があります。

textContentプロパティは、テキストノードの値を取得または設定する際に非常に便利です。例えば、Webページの特定の要素のテキストコンテンツを更新したり、フォームに入力されたテキストを取得したりするために使用できます。textContentプロパティを使用することで、DOM操作をより効率的に、そして安全に行うことができます。DOMElementオブジェクトのtextContentプロパティにアクセスするには、$element->textContentのように記述します。ここで、$elementはDOMElementオブジェクトのインスタンスです。設定する場合は、$element->textContent = '新しいテキストコンテンツ';のように記述します。

構文(syntax)

1<?php
2$dom = new DOMDocument();
3$element = $dom->createElement('test', 'Hello');
4$dom->appendChild($element);
5
6$textContent = $element->textContent;
7echo $textContent; // 出力: Hello
8
9$element->textContent = 'World';
10echo $element->textContent; // 出力: World
11?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

DOMElementオブジェクトが表現する要素のテキストコンテンツを文字列として取得します。これには、子要素のテキストコンテンツも再帰的に含まれます。

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