@ 2016-02-02T14:35:22Z <?php
class MyNode extends DOMNode {
public function describe() {
echo "I am a " . $this->tagName . " node!";
}
}
class MyElement extends DOMElement {}
class MyDocument extends DOMDocument {}
$dom = new MyDocument();
$dom->registerNodeClass("DOMNode", "MyNode");
$dom->registerNodeClass("DOMElement", "MyElement");
$dom->loadHTML("<!doctype html><h1>Hello, World!</h1>");
var_dump(get_class($dom->documentElement));
var_dump($dom->documentElement->childNodes->item(0));
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 8.3.0 - 8.3.6 string(9) "MyElement"
object(MyElement)#4 (27) {
["schemaTypeInfo"]=>
NULL
["tagName"]=>
string(4) "body"
["className"]=>
string(0) ""
["id"]=>
string(0) ""
["firstElementChild"]=>
string(22) "(object value omitted)"
["lastElementChild"]=>
string(22) "(object value omitted)"
["childElementCount"]=>
int(1)
["previousElementSibling"]=>
NULL
["nextElementSibling"]=>
NULL
["nodeName"]=>
string(4) "body"
["nodeValue"]=>
string(13) "Hello, World!"
["nodeType"]=>
int(1)
["parentNode"]=>
string(22) "(object value omitted)"
["parentElement"]=>
string(22) "(object value omitted)"
["childNodes"]=>
string(22) "(object value omitted)"
["firstChild"]=>
string(22) "(object value omitted)"
["lastChild"]=>
string(22) "(object value omitted)"
["previousSibling"]=>
NULL
["nextSibling"]=>
NULL
["attributes"]=>
string(22) "(object value omitted)"
["isConnected"]=>
bool(true)
["ownerDocument"]=>
string(22) "(object value omitted)"
["namespaceURI"]=>
NULL
["prefix"]=>
string(0) ""
["localName"]=>
string(4) "body"
["baseURI"]=>
NULL
["textContent"]=>
string(13) "Hello, World!"
}
Output for 8.1.0 - 8.1.28 , 8.2.0 - 8.2.18 string(9) "MyElement"
object(MyElement)#4 (23) {
["schemaTypeInfo"]=>
NULL
["tagName"]=>
string(4) "body"
["firstElementChild"]=>
string(22) "(object value omitted)"
["lastElementChild"]=>
string(22) "(object value omitted)"
["childElementCount"]=>
int(1)
["previousElementSibling"]=>
NULL
["nextElementSibling"]=>
NULL
["nodeName"]=>
string(4) "body"
["nodeValue"]=>
string(13) "Hello, World!"
["nodeType"]=>
int(1)
["parentNode"]=>
string(22) "(object value omitted)"
["childNodes"]=>
string(22) "(object value omitted)"
["firstChild"]=>
string(22) "(object value omitted)"
["lastChild"]=>
string(22) "(object value omitted)"
["previousSibling"]=>
NULL
["nextSibling"]=>
NULL
["attributes"]=>
string(22) "(object value omitted)"
["ownerDocument"]=>
string(22) "(object value omitted)"
["namespaceURI"]=>
NULL
["prefix"]=>
string(0) ""
["localName"]=>
string(4) "body"
["baseURI"]=>
NULL
["textContent"]=>
string(13) "Hello, World!"
}
Output for 8.0.0 - 8.0.30 string(9) "MyElement"
object(MyElement)#4 (23) {
["tagName"]=>
string(4) "body"
["schemaTypeInfo"]=>
NULL
["firstElementChild"]=>
string(22) "(object value omitted)"
["lastElementChild"]=>
string(22) "(object value omitted)"
["childElementCount"]=>
int(1)
["previousElementSibling"]=>
NULL
["nextElementSibling"]=>
NULL
["nodeName"]=>
string(4) "body"
["nodeValue"]=>
string(13) "Hello, World!"
["nodeType"]=>
int(1)
["parentNode"]=>
string(22) "(object value omitted)"
["childNodes"]=>
string(22) "(object value omitted)"
["firstChild"]=>
string(22) "(object value omitted)"
["lastChild"]=>
string(22) "(object value omitted)"
["previousSibling"]=>
NULL
["nextSibling"]=>
NULL
["attributes"]=>
string(22) "(object value omitted)"
["ownerDocument"]=>
string(22) "(object value omitted)"
["namespaceURI"]=>
NULL
["prefix"]=>
string(0) ""
["localName"]=>
string(4) "body"
["baseURI"]=>
NULL
["textContent"]=>
string(13) "Hello, World!"
}
Output for 7.0.20 , 7.1.5 - 7.1.20 , 7.2.6 - 7.2.33 , 7.3.16 - 7.3.33 , 7.4.0 - 7.4.33 string(9) "MyElement"
object(MyElement)#4 (18) {
["tagName"]=>
string(4) "body"
["schemaTypeInfo"]=>
NULL
["nodeName"]=>
string(4) "body"
["nodeValue"]=>
string(13) "Hello, World!"
["nodeType"]=>
int(1)
["parentNode"]=>
string(22) "(object value omitted)"
["childNodes"]=>
string(22) "(object value omitted)"
["firstChild"]=>
string(22) "(object value omitted)"
["lastChild"]=>
string(22) "(object value omitted)"
["previousSibling"]=>
NULL
["nextSibling"]=>
NULL
["attributes"]=>
string(22) "(object value omitted)"
["ownerDocument"]=>
string(22) "(object value omitted)"
["namespaceURI"]=>
NULL
["prefix"]=>
string(0) ""
["localName"]=>
string(4) "body"
["baseURI"]=>
NULL
["textContent"]=>
string(13) "Hello, World!"
}
Output for 5.5.24 - 5.5.35 , 5.6.8 - 5.6.28 , 7.0.0 - 7.0.6 , 7.1.0 string(9) "MyElement"
object(MyElement)#4 (17) {
["tagName"]=>
string(4) "body"
["schemaTypeInfo"]=>
NULL
["nodeName"]=>
string(4) "body"
["nodeValue"]=>
string(13) "Hello, World!"
["nodeType"]=>
int(1)
["parentNode"]=>
string(22) "(object value omitted)"
["childNodes"]=>
string(22) "(object value omitted)"
["firstChild"]=>
string(22) "(object value omitted)"
["lastChild"]=>
string(22) "(object value omitted)"
["previousSibling"]=>
NULL
["attributes"]=>
string(22) "(object value omitted)"
["ownerDocument"]=>
string(22) "(object value omitted)"
["namespaceURI"]=>
NULL
["prefix"]=>
string(0) ""
["localName"]=>
string(4) "body"
["baseURI"]=>
NULL
["textContent"]=>
string(13) "Hello, World!"
}
preferences:dark mode live preview
180.45 ms | 403 KiB | 182 Q