php-src/ext/simplexml/tests/024.phpt

318 lines
4.9 KiB
Plaintext
Raw Normal View History

2005-10-30 13:01:01 +00:00
--TEST--
SimpleXML: XPath and attributes
--SKIPIF--
<?php if (!extension_loaded("simplexml")) print "skip"; ?>
--FILE--
<?php
$xml =b<<<EOF
2005-10-30 13:01:01 +00:00
<?xml version='1.0'?>
<root>
<elem attr1='11' attr2='12' attr3='13'/>
<elem attr1='21' attr2='22' attr3='23'/>
<elem attr1='31' attr2='32' attr3='33'/>
</root>
EOF;
$sxe = simplexml_load_string($xml);
function test($xpath)
{
global $sxe;
echo "===$xpath===\n";
var_dump($sxe->xpath($xpath));
}
test('elem/@attr2');
test('//@attr2');
test('//@*');
test('elem[2]/@attr2');
?>
===DONE===
--EXPECTF--
===elem/@attr2===
array(3) {
[0]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "12"
}
}
[1]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "22"
}
}
[2]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "32"
}
}
}
===//@attr2===
array(3) {
[0]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "12"
}
}
[1]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "22"
}
}
[2]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "32"
}
}
}
===//@*===
array(9) {
[0]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr1"]=>
string(2) "11"
}
}
[1]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "12"
}
}
[2]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr3"]=>
string(2) "13"
}
}
[3]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr1"]=>
string(2) "21"
}
}
[4]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "22"
}
}
[5]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr3"]=>
string(2) "23"
}
}
[6]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr1"]=>
string(2) "31"
}
}
[7]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "32"
}
}
[8]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr3"]=>
string(2) "33"
}
}
}
===elem[2]/@attr2===
array(1) {
[0]=>
object(SimpleXMLElement)#%d (1) {
["@attributes"]=>
array(1) {
["attr2"]=>
string(2) "22"
}
}
}
===DONE===
2005-10-30 14:00:45 +00:00
--UEXPECTF--
===elem/@attr2===
array(3) {
[0]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "12"
2005-10-30 14:00:45 +00:00
}
}
[1]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "22"
2005-10-30 14:00:45 +00:00
}
}
[2]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "32"
2005-10-30 14:00:45 +00:00
}
}
}
===//@attr2===
array(3) {
[0]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "12"
2005-10-30 14:00:45 +00:00
}
}
[1]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "22"
2005-10-30 14:00:45 +00:00
}
}
[2]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "32"
2005-10-30 14:00:45 +00:00
}
}
}
===//@*===
array(9) {
[0]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr1"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "11"
2005-10-30 14:00:45 +00:00
}
}
[1]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "12"
2005-10-30 14:00:45 +00:00
}
}
[2]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr3"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "13"
2005-10-30 14:00:45 +00:00
}
}
[3]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr1"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "21"
2005-10-30 14:00:45 +00:00
}
}
[4]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "22"
2005-10-30 14:00:45 +00:00
}
}
[5]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr3"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "23"
2005-10-30 14:00:45 +00:00
}
}
[6]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr1"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "31"
2005-10-30 14:00:45 +00:00
}
}
[7]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "32"
2005-10-30 14:00:45 +00:00
}
}
[8]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr3"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "33"
2005-10-30 14:00:45 +00:00
}
}
}
===elem[2]/@attr2===
array(1) {
[0]=>
object(SimpleXMLElement)#%d (1) {
[u"@attributes"]=>
array(1) {
[u"attr2"]=>
2005-12-07 16:52:13 +00:00
unicode(2) "22"
2005-10-30 14:00:45 +00:00
}
}
}
===DONE===