mirror of
https://github.com/php/php-src.git
synced 2024-09-22 02:17:32 +00:00
d04f48b6ac
ref: https://dom.spec.whatwg.org/#parent-element Closes GH-11679.
201 lines
3.3 KiB
PHP
201 lines
3.3 KiB
PHP
--TEST--
|
|
Bug #69846 Segmenation fault (access violation) when iterating over DOMNodeList
|
|
--EXTENSIONS--
|
|
dom
|
|
--FILE--
|
|
<?php
|
|
|
|
$tmpDomDocument = new DOMDocument();
|
|
|
|
$xml = '<?xml version="1.0" encoding="UTF-8"?><dummy xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/"><xfa:data>
|
|
<form1>
|
|
<TextField1>Value A</TextField1>
|
|
<TextField1>Value B</TextField1>
|
|
<TextField1>Value C</TextField1>
|
|
</form1>
|
|
</xfa:data></dummy>';
|
|
|
|
$tmpDomDocument->loadXML($xml);
|
|
|
|
$dataNodes = $tmpDomDocument->firstChild->childNodes->item(0)->childNodes;
|
|
|
|
var_dump($dataNodes->length);
|
|
$datasetDom = new DOMDocument();
|
|
|
|
foreach ($dataNodes AS $node) {
|
|
$node = $datasetDom->importNode($node, true);
|
|
var_dump($node);
|
|
}
|
|
|
|
?>
|
|
--EXPECT--
|
|
int(3)
|
|
object(DOMText)#7 (23) {
|
|
["wholeText"]=>
|
|
string(3) "
|
|
"
|
|
["data"]=>
|
|
string(3) "
|
|
"
|
|
["length"]=>
|
|
int(3)
|
|
["previousElementSibling"]=>
|
|
NULL
|
|
["nextElementSibling"]=>
|
|
NULL
|
|
["nodeName"]=>
|
|
string(5) "#text"
|
|
["nodeValue"]=>
|
|
string(3) "
|
|
"
|
|
["nodeType"]=>
|
|
int(3)
|
|
["parentNode"]=>
|
|
NULL
|
|
["parentElement"]=>
|
|
NULL
|
|
["childNodes"]=>
|
|
string(22) "(object value omitted)"
|
|
["firstChild"]=>
|
|
NULL
|
|
["lastChild"]=>
|
|
NULL
|
|
["previousSibling"]=>
|
|
NULL
|
|
["nextSibling"]=>
|
|
NULL
|
|
["attributes"]=>
|
|
NULL
|
|
["isConnected"]=>
|
|
bool(false)
|
|
["ownerDocument"]=>
|
|
string(22) "(object value omitted)"
|
|
["namespaceURI"]=>
|
|
NULL
|
|
["prefix"]=>
|
|
string(0) ""
|
|
["localName"]=>
|
|
NULL
|
|
["baseURI"]=>
|
|
NULL
|
|
["textContent"]=>
|
|
string(3) "
|
|
"
|
|
}
|
|
object(DOMElement)#7 (27) {
|
|
["schemaTypeInfo"]=>
|
|
NULL
|
|
["tagName"]=>
|
|
string(5) "form1"
|
|
["className"]=>
|
|
string(0) ""
|
|
["id"]=>
|
|
string(0) ""
|
|
["firstElementChild"]=>
|
|
string(22) "(object value omitted)"
|
|
["lastElementChild"]=>
|
|
string(22) "(object value omitted)"
|
|
["childElementCount"]=>
|
|
int(3)
|
|
["previousElementSibling"]=>
|
|
NULL
|
|
["nextElementSibling"]=>
|
|
NULL
|
|
["nodeName"]=>
|
|
string(5) "form1"
|
|
["nodeValue"]=>
|
|
string(39) "
|
|
Value A
|
|
Value B
|
|
Value C
|
|
"
|
|
["nodeType"]=>
|
|
int(1)
|
|
["parentNode"]=>
|
|
NULL
|
|
["parentElement"]=>
|
|
NULL
|
|
["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(false)
|
|
["ownerDocument"]=>
|
|
string(22) "(object value omitted)"
|
|
["namespaceURI"]=>
|
|
NULL
|
|
["prefix"]=>
|
|
string(0) ""
|
|
["localName"]=>
|
|
string(5) "form1"
|
|
["baseURI"]=>
|
|
NULL
|
|
["textContent"]=>
|
|
string(39) "
|
|
Value A
|
|
Value B
|
|
Value C
|
|
"
|
|
}
|
|
object(DOMText)#7 (23) {
|
|
["wholeText"]=>
|
|
string(1) "
|
|
"
|
|
["data"]=>
|
|
string(1) "
|
|
"
|
|
["length"]=>
|
|
int(1)
|
|
["previousElementSibling"]=>
|
|
NULL
|
|
["nextElementSibling"]=>
|
|
NULL
|
|
["nodeName"]=>
|
|
string(5) "#text"
|
|
["nodeValue"]=>
|
|
string(1) "
|
|
"
|
|
["nodeType"]=>
|
|
int(3)
|
|
["parentNode"]=>
|
|
NULL
|
|
["parentElement"]=>
|
|
NULL
|
|
["childNodes"]=>
|
|
string(22) "(object value omitted)"
|
|
["firstChild"]=>
|
|
NULL
|
|
["lastChild"]=>
|
|
NULL
|
|
["previousSibling"]=>
|
|
NULL
|
|
["nextSibling"]=>
|
|
NULL
|
|
["attributes"]=>
|
|
NULL
|
|
["isConnected"]=>
|
|
bool(false)
|
|
["ownerDocument"]=>
|
|
string(22) "(object value omitted)"
|
|
["namespaceURI"]=>
|
|
NULL
|
|
["prefix"]=>
|
|
string(0) ""
|
|
["localName"]=>
|
|
NULL
|
|
["baseURI"]=>
|
|
NULL
|
|
["textContent"]=>
|
|
string(1) "
|
|
"
|
|
}
|