ID: 47117 Updated by: j...@php.net Reported By: dir at melbis dot com -Status: Open +Status: Feedback Bug Type: DOM XML related Operating System: FreeBSD 7.1 PHP Version: 5.2.8 New Comment:
Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://windows.php.net/snapshots/ Previous Comments: ------------------------------------------------------------------------ [2009-01-15 17:24:28] dir at melbis dot com Description: ------------ When parsing XML, chars "<" and ">" was gone... For sample, Tag has "<STRONG>", but outside wrong value: "STRONG", must be "<STRONG>" Reproduce code: --------------- $data = '<MELBISSHOP Version="5.4.0"><DO KeyValues="1242"><descr><STRONG></descr></DO></MELBISSHOP>'; $xml_parser = xml_parser_create('UTF-8'); xml_set_element_handler($xml_parser, "start_xml_tag", "end_xml_tag"); xml_set_character_data_handler($xml_parser, "xml_tag"); xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, FALSE); xml_parse($xml_parser, $data, true); function start_xml_tag($mParser, $mName, $mAttrs) { global $gDoValues, $gCurrentTagName; $gCurrentTagName = $mName; if ( $mName != 'DO' ) { $gDoValues[$gCurrentTagName] = ''; } else { $gDoValues = array(); } } function xml_tag($mParser, $mData) { global $gDoValues, $gCurrentTagName; $gDoValues[$gCurrentTagName] .= $mData;} function end_xml_tag($mParser, $mName) { global $gDoValues, $gData; if ($mName == 'DO') { print_r($gDoValues); }} Expected result: ---------------- Array ( [descr] => <STRONG> ) Actual result: -------------- Array ( [descr] => STRONG ) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=47117&edit=1