<?php
$xml = <<<XML
<?xml version='1.0' standalone='yes'?>
<movies>
<movie>
<title>PHP: Behind the Parser</title>
<characters>
<character>
<name>Ms. Coder</name>
<actor>Onlivia Actora</actor>
</character>
<character>
<name>Mr. Coder</name>
<actor>El ActÓr</actor>
</character>
</characters>
<plot>
So, this language. It's like, a programming language. Or is it a
scripting language? All is revealed in this thrilling horror spoof
of a documentary.
</plot>
<great-lines1>
<line>PHP solves all my web problems</line>
</great-lines1>
<great-lines2>
<line>PHP solves all my web problems</line>
<![CDATA[always be testing!]]>
</great-lines2>
<great-lines3>
PHP solves all my web problems
<![CDATA[always be testing!]]>
</great-lines2>
<rating type="thumbs">7</rating>
<rating type="stars">5</rating>
</movie>
</movies>
XML;
$sml = new SimpleXMLElement ($xml);
$result1 = $sml->xpath('/movies/movie/great-lines1');
$result2 = $sml->xpath('/movies/movie/great-lines2');
$result3 = $sml->xpath('/movies/movie/great-lines3');
var_dump($result1);
var_dump($result2);
var_dump($result3);
Warning: SimpleXMLElement::__construct(): Entity: line 30: parser error : Opening and ending tag mismatch: great-lines3 line 27 and great-lines2 in /in/0ILqX on line 42
Warning: SimpleXMLElement::__construct(): </great-lines2> in /in/0ILqX on line 42
Warning: SimpleXMLElement::__construct(): ^ in /in/0ILqX on line 42
Fatal error: Uncaught Exception: String could not be parsed as XML in /in/0ILqX:42
Stack trace:
#0 /in/0ILqX(42): SimpleXMLElement->__construct('<?xml version='...')
#1 {main}
thrown in /in/0ILqX on line 42
Process exited with code 255.
Warning: SimpleXMLElement::__construct(): Entity: line 30: parser error : Opening and ending tag mismatch: great-lines3 line 27 and great-lines2 in /in/0ILqX on line 42
Warning: SimpleXMLElement::__construct(): </great-lines2> in /in/0ILqX on line 42
Warning: SimpleXMLElement::__construct(): ^ in /in/0ILqX on line 42
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /in/0ILqX:42
Stack trace:
#0 /in/0ILqX(42): SimpleXMLElement->__construct('<?xml version='...')
#1 {main}
thrown in /in/0ILqX on line 42
Process exited with code 255.
Output for 5.1.2
Warning: SimpleXMLElement::__construct(): Entity: line 30: parser error : Opening and ending tag mismatch: great-lines3 line 27 and great-lines2 in /in/0ILqX on line 43
Warning: SimpleXMLElement::__construct(): </great-lines2> in /in/0ILqX on line 43
Warning: SimpleXMLElement::__construct(): ^ in /in/0ILqX on line 43
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /in/0ILqX:43
Stack trace:
#0 /in/0ILqX(43): SimpleXMLElement->__construct('<?xml version='...')
#1 {main}
thrown in /in/0ILqX on line 43
Process exited with code 255.
Output for 5.0.3 - 5.0.5
Warning: Entity: line 30: parser error : Opening and ending tag mismatch: great-lines3 line 27 and great-lines2 in /in/0ILqX on line 42
Warning: </great-lines2> in /in/0ILqX on line 42
Warning: ^ in /in/0ILqX on line 42
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /in/0ILqX:42
Stack trace:
#0 /in/0ILqX(42): SimpleXMLElement->__construct('<?xml version='...')
#1 {main}
thrown in /in/0ILqX on line 42
Process exited with code 255.
Output for 5.0.0 - 5.0.2
Warning: Entity: line 30: parser error : Opening and ending tag mismatch: great-lines3 line 27 and great-lines2 in /in/0ILqX on line 42
Warning: </great-lines2> in /in/0ILqX on line 42
Warning: ^ in /in/0ILqX on line 42
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /in/0ILqX:42
Stack trace:
#0 {main}
thrown in /in/0ILqX on line 42
Process exited with code 255.