DOMDocument::registerNodeClass()函數是PHP中的內置函數,用於注冊用於創建基本節點類型的擴展類。
用法:
bool DOMDocument::registerNodeClass( string $baseclass,
string $extendedclass )
參數:該函數接受上述和以下所述的兩個參數:
- $baseclass:它指定要擴展的DOM類。
- $extendedclass:它指定擴展的類名。
返回值:如果成功,則此函數返回TRUE;如果失敗,則返回FALSE。
下麵給出的程序說明了PHP中的DOMDocument::registerNodeClass()函數:
程序1:在此程序中,我們將使用類創建具有CSS屬性的HTML div元素。
<?php
// Create a class myElement
class myElement extends DOMElement
{
// Create a custom function to
// append the element
public function appendElement($name)
{
return $this->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:在此程序中,我們將使用類獲取標簽的文本內容。
<?php
class myElement extends DOMElement {
// Create a custom function to
// get the value of node
public function getData() {
return $this->nodeValue;
}
}
// Create a new DOMDocument
$doc = new DOMDocument;
// Load the XML
$doc->loadXML(
"<root><div><h1>This is my heading</h1></div></root>");
// 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
相關用法
- PHP DOMDocument importNode()用法及代碼示例
- PHP DOMDocument getElementsByTagName()用法及代碼示例
- PHP DOMDocument save()用法及代碼示例
- PHP DOMDocument load()用法及代碼示例
- PHP DOMDocument loadHTML()用法及代碼示例
- PHP DOMDocument loadHTMLFile()用法及代碼示例
- PHP DOMDocument normalizeDocument()用法及代碼示例
- PHP DOMDocument loadXML()用法及代碼示例
- PHP DOMDocument relaxNGValidateSource()用法及代碼示例
- PHP DOMDocument createEntityReference()用法及代碼示例
- PHP DOMDocument createProcessingInstruction()用法及代碼示例
- PHP DOMDocument saveHTML()用法及代碼示例
- PHP DOMDocument saveHTMLFile()用法及代碼示例
- PHP DOMDocument saveXML()用法及代碼示例
- PHP DOMDocument createTextNode()用法及代碼示例
注:本文由純淨天空篩選整理自gurrrung大神的英文原創作品 PHP | DOMDocument registerNodeClass() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
