DOMElement::removeAttribute

(PHP 5, PHP 7, PHP 8)

DOMElement::removeAttribute属性を削除する

説明

public DOMElement::removeAttribute(string $qualifiedName): bool

qualifiedName という名前の属性を要素から削除します。

パラメータ

qualifiedName

属性の名前。

戻り値

成功した場合に true を、失敗した場合に false を返します。

エラー / 例外

DOM_NO_MODIFICATION_ALLOWED_ERR

ノードが読み込み専用の場合に発生します。

参考

add a note add a note

User Contributed Notes 2 notes

up
1
Rakesh Verma - rakeshnsony at gmail dot com
14 years ago
<?php

//Store your html into $html variable.

$html="<html>
<head>
<title>Rakesh Verma</title>
</head>

<body>
    <a href='http://example.com'>Example</a>
    <a href='http://google.com'>Google</a>
    <a href='http://www.yahoo.com'>Yahoo</a>
</body>

</html>"
;

$dom = new DOMDocument();
$dom->loadHTML($html);

//Evaluate Anchor tag in HTML
$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate("/html/body//a");

for (
$i = 0; $i < $hrefs->length; $i++) {
       
$href = $hrefs->item($i);
       
$url = $href->getAttribute('href');

       
//remove and set target attribute       
       
$href->removeAttribute('target');
       
$href->setAttribute("target", "_blank");

       
$newURL=$url.".au";

       
//remove and set href attribute       
       
$href->removeAttribute('href');
       
$href->setAttribute("href", $newURL);
}

// save html
$html=$dom->saveHTML();

echo
$html;

?>
up
-1
suwayan at mail dot ru
12 years ago
<?php
/*When I try to get a some attribute from not validated HTML or XML document, PHP dies with no errors in logs or output:
*/
       
function is_attribute_value($obj,$type,$value)
        {
           
$_ret=false;
            if(
$obj)
            {
                if(
$val=$obj->getAttribute($type))
                {
                    if(
$val==$value)
                    {
                       
$_ret=true;
                    }
                }
            }
            return
$_ret;
        }
//And this check helped to me:
       
function is_attribute_value($obj,$type,$value)
        {
           
$_ret=false;
            if(
$obj->attributes)
            {
                if(
$val=$obj->getAttribute($type))
                {
                    if(
$val==$value)
                    {
                       
$_ret=true;
                    }
                }
            }
            return
$_ret;
        }
?>
To Top