
DOMElement::hasAttribute 메소드는 HTML 요소의 속성이 존재하는지 여부를 boolean 값으로 반환합니다. 하지만, 속성이 존재하는 경우에도 메소드는 true를 반환하지만, 속성의 실제 값은 null로 반환되는 문제가 발생하는 이유는 다음과 같습니다.
- DOMElement::hasAttribute 메소드는 속성이 존재하는지 여부를 확인하기 위해 HTML 요소의 속성 이름을 검사합니다. 이 메소드는 속성이 존재하는 경우 true를 반환하지만, 속성의 실제 값을 반환하지는 않습니다.
- 속성이 존재하는 경우에도 null이 반환되는 이유는 DOMElement::getAttribute 메소드를 사용하여 속성의 실제 값을 가져올 때, 속성이 존재하지 않으면 null이 반환되는 것과 동일한 방식으로 null이 반환되는 것입니다.
속성을 실제로 가져올 수 있는 방법은 다음과 같습니다.
- DOMElement::getAttribute 메소드를 사용하여 속성의 실제 값을 가져올 수 있습니다. 이 메소드는 속성이 존재하지 않으면 null을 반환하므로, 속성이 존재하는지 여부를 확인하기 위해 DOMElement::hasAttribute 메소드를 사용하여 속성이 존재하는지 여부를 확인한 후, DOMElement::getAttribute 메소드를 사용하여 속성의 실제 값을 가져올 수 있습니다.
예를 들어, HTML 요소에 속성이 존재하는 경우, 다음과 같이 속성을 실제로 가져올 수 있습니다.
#hostingforum.kr
php
$element = new DOMElement('div', '속성');
if ($element->hasAttribute('속성')) {
$value = $element->getAttribute('속성');
echo $value; // 속성
}
위의 예제에서, DOMElement::hasAttribute 메소드를 사용하여 속성이 존재하는지 여부를 확인한 후, DOMElement::getAttribute 메소드를 사용하여 속성의 실제 값을 가져올 수 있습니다.
2025-06-08 11:59