ID:               43347
 Updated by:       [EMAIL PROTECTED]
 Reported By:      pschmandra at hotmail dot com
 Status:           Open
 Bug Type:         XML related
 Operating System: Red Hat Linux Enterprise 5
 PHP Version:      5.1.6
 New Comment:

Please show an example of your XML


Previous Comments:
------------------------------------------------------------------------

[2007-11-20 18:49:11] pschmandra at hotmail dot com

All supported encodings listed below cause the xml_parse() function to
error out parsing any Chinese Traditional RSS Feeds published by the BBC
using PHP5.1.6 with a UTF-8 default_charset.

xml_parser_create()
xml_parser_create('')
xml_parser_create('UTF-8')
xml_parser_create('ISO-8859-1')
xml_parser_create('US-ASCII')

------------------------------------------------------------------------

[2007-11-20 17:56:22] [EMAIL PROTECTED]

Please also read
http://php.net/manual/en/function.xml-parser-create.php
carefully, especially:
***
The optional encoding specifies the character encoding for the 
input/output in PHP 4. Starting from PHP 5, the input encoding is 
automatically detected, so that the encoding parameter specifies only 
the output encoding. In PHP 4, the default output encoding is the same

as the input charset. If empty string is passed, the parser attempts to

identify which encoding the document is encoded in by looking at the 
heading 3 or 4 bytes. In PHP 5.0.0 and 5.0.1, the default output
charset 
is ISO-8859-1, while in PHP 5.0.2 and upper is UTF-8. The supported 
encodings are ISO-8859-1, UTF-8 and US-ASCII.
***

------------------------------------------------------------------------

[2007-11-20 16:49:39] [EMAIL PROTECTED]

What was the full configure line used to configure PHP in this case? 
And I don't see any crash there, just a normal error for passing data
with encoding which isn't supported by the xml library in use..

------------------------------------------------------------------------

[2007-11-20 14:58:22] pschmandra at hotmail dot com

Description:
------------
After upgrading PHP5 the xml_parse() parser throws 

Warning: xml_parse() [function.xml-parse]: input conversion failed due
to input error, bytes 0xA3 0xEE 0x7D 0x5F

when parsing Chineese Traditional BBC News Feed.

newsrss.bbc.co.uk/rss/chinese/trad/taiwan_hk/rss.xml.

This function works perfectly using PHP4. Googling this error brings
~800 similar results.

Reproduce code:
---------------
if(!xml_parse($this->feedReader, $BBC_data)){
                                                $this->in_error = true;
                                                $this->error_msg = sprintf("XML 
Error: %s at line %d",
xml_error_string(xml_get_error_code($this->feedReader)),
xml_get_current_line_number($this->feedReader));
                                        }

Expected result:
----------------
Expect xml_parse() function to parse feed without crashing ala PHP4.

Actual result:
--------------
xml_parse() function crashes throwing

Warning: xml_parse() [function.xml-parse]: input conversion failed due
to input error, bytes 0xA3 0xEE 0x7D 0x5F


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=43347&edit=1

Reply via email to