1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
--TEST--
Attribute entity expansion
--EXTENSIONS--
dom
--FILE--
<?php
$doc = Dom\HTMLDocument::createEmpty();
$elt = $doc->createElement('elt');
$doc->appendChild($elt);
$elt->setAttribute('a','&');
print $doc->saveHtml($elt) . "\n";
$attr = $elt->getAttributeNode('a');
$attr->value = '&';
print "$attr->value\n";
print $doc->saveHtml($elt) . "\n";
$attr->removeChild($attr->firstChild);
print $doc->saveHtml($elt) . "\n";
$attr->nodeValue = '&';
print "$attr->nodeValue\n";
print $doc->saveHtml($elt) . "\n";
$attr->nodeValue = '&';
print "$attr->nodeValue\n";
print $doc->saveHtml($elt) . "\n";
$elt->removeAttributeNode($attr);
$elt->setAttributeNS('http://www.w3.org/2000/svg', 'svg:id','&');
print $doc->saveHtml($elt) . "\n";
$attr = $elt->getAttributeNodeNS('http://www.w3.org/2000/svg', 'id');
$attr->value = '<&';
print "$attr->value\n";
print $doc->saveHtml($elt) . "\n";
?>
--EXPECT--
<elt a="&"></elt>
&
<elt a="&amp;"></elt>
<elt a=""></elt>
&
<elt a="&"></elt>
&
<elt a="&amp;"></elt>
<elt svg:id="&amp;"></elt>
<&
<elt svg:id="&lt;&amp;"></elt>
|