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

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

作成日: 更新日:

基本的な使い方

『valueプロパティは、Dom\TokenListオブジェクトが表現するトークンリスト全体を、スペースで区切られた単一の文字列として保持するプロパティです。HTML文書を操作する際、要素が持つclass属性のように、複数の値をスペースで区切って指定する属性があります。Dom\TokenListは、これらの値を個別のトークンとして管理しますが、valueプロパティを使うと、それらのトークンを連結した元の属性値そのままの文字列として取得できます。例えば、ある要素のクラスが"alert success"の場合、その要素のTokenListオブジェクトのvalueプロパティは、文字列"alert success"を返します。また、このプロパティは読み取りだけでなく、書き込みも可能です。valueプロパティに新しい文字列を代入すると、関連付けられている属性の値がその文字列で完全に置き換えられます。これにより、属性値を一度にまとめて変更することができます。個々のトークンを追加・削除するadd()remove()メソッドとは対照的に、属性値全体を文字列として直接扱いたい場合にこのプロパティを使用します。』

構文(syntax)

1<?php
2
3// DOMドキュメントを準備します
4$document = new \Dom\Document();
5$document->loadHTML('<!DOCTYPE html><p class="c1 c2"></p>');
6
7// p要素を取得します
8$element = $document->getElementsByTagName('p')[0];
9
10// Dom\TokenListオブジェクトのvalueプロパティでクラスを文字列として取得します
11$currentValue = $element->classList->value;
12
13// string(5) "c1 c2"
14var_dump($currentValue);
15
16// valueプロパティに新しい文字列を代入してクラスを上書きします
17$element->classList->value = 'c3 c4 c5';
18
19// 変更が反映されていることを確認します
20echo $document->saveHTML($element); // <p class="c3 c4 c5"></p>
21
22?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

このプロパティは、Dom\TokenList オブジェクトに含まれるトークンをスペース区切りで連結した文字列を返します。

関連コンテンツ

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