📜  PHP | DOMDocument registerNodeClass()函数

📅  最后修改于: 2022-05-13 01:56:25.022000             🧑  作者: Mango

PHP | DOMDocument registerNodeClass()函数

DOMDocument::registerNodeClass()函数是PHP中的一个内置函数,用于注册用于创建基本节点类型的扩展类。

句法:

bool DOMDocument::registerNodeClass( string $baseclass,
                              string $extendedclass )

参数:此函数接受上面提到的两个参数,如下所述:

  • $baseclass:它指定要扩展的 DOM 类。
  • $extendedclass:指定扩展类名。

返回值:此函数在成功时返回 TRUE,在失败时返回 FALSE。

下面给出的程序说明了PHP中的DOMDocument::registerNodeClass()函数

程序 1:在这个程序中,我们将使用类创建一个带有 CSS 属性的 HTML div 元素。

appendChild(new myElement($name));
    }
}
  
// Create a class myDocoment
class myDocument extends DOMDocument {
  
    // Create a custom function to set the root
    public function setRoot($name) {
        return $this->appendChild(new myElement($name));
    }
}
  
// Create a instance of above class
$doc = new myDocument();
  
// Register the node class
$doc->registerNodeClass('DOMElement', 'myElement');
  
// Use setRoot created in myDocument class
$root = $doc->setRoot('div');
  
// Use appendElement created in myElement
$child = $root->appendElement('div');
  
// Set the attribute
$child->setAttribute('style',
    'background:blue; width:100px;height:100px');
  
echo $doc->saveXML();
?>

输出:

程序 2:在这个程序中,我们将使用类获取标签的文本内容。

nodeValue;
    }
}
  
// Create a new DOMDocument
$doc = new DOMDocument;
  
// Load the XML
$doc->loadXML(
"

This is my heading

");    // Register the node class $doc->registerNodeClass("DOMElement", "myElement");    // Get the element $element = $doc->getElementsByTagName("h1")->item(0);    // Use the custom created getData() function echo $element->getData(); ?>

输出:

This is my heading

参考: https://www. PHP.net/manual/en/domdocument.registernodeclass。 PHP