On 22 October 2010 19:32, Bastien Koert <phpster@xxxxxxxxx> wrote: > On Fri, Oct 22, 2010 at 2:28 PM, Richard Quadling <rquadling@xxxxxxxxx> wrote: >> On 22 October 2010 19:01, TR Shaw <tshaw@xxxxxxxx> wrote: >>> >>> On Oct 22, 2010, at 1:56 PM, Ashley Sheridan wrote: >>> >>>> On Fri, 2010-10-22 at 12:03 -0400, Adam Richardson wrote: >>>> >>>>> On Fri, Oct 22, 2010 at 11:47 AM, TR Shaw <tshaw@xxxxxxxx> wrote: >>>>> >>>>>> Anyone have an idea how to work around this? I tried: >>>>>> >>>>>> define ('reg', 'Â'); >>>>>> define ('®', 'Â'); >>>>>> >>>>>> can't figure how to override the entity table. ÂErrors follw: >>>>>> >>>>>> Warning: simplexml_load_string(): >>>>>> o.cc/46/e53d68e007fd45c2fccb502f2e7ccad5.php?user_id=47&sub_id=61862469® >>>>>> in checkifup.php on line 5119 >>>>>> >>>>>> Warning: simplexml_load_string(): >>>>>> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â ^ in checkifup.php on line 5119 >>>>>> >>>>>> Warning: simplexml_load_string(): Entity: line 220: parser error : Entity >>>>>> 'reg' not defined in checkifup.php on line 5119 >>>>>> >>>>>> Warning: simplexml_load_string(): >>>>>> /office/e53d68e007fd45c2fccb502f2e7ccad5.php?user_id=47&sub_id=89877485® >>>>>> in checkifup.php on line 5119 >>>>>> >>>>>> >>>>>> -- >>>>>> PHP General Mailing List (http://www.php.net/) >>>>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>>>> >>>>>> >>>>> Does doing a str_replace and changing it to the corresponding entity number >>>>> (®) before parsing with simple_xml work? >>>>> >>>>> Here's a more robust function: >>>>> http://www.sourcerally.net/Scripts/39-Convert-HTML-Entities-to-XML-Entities >>>>> >>>>> Adam >>>>> >>>> >>>> >>>> >>>> This isn't a PHP error, it's an error with your XML. The regular HTML >>>> entities which you're used to such as ® and © are not >>>> recognised in XML without first being declared as entities. The entities >>>> exist in HTML because just outputting those characters won't always work >>>> in a web browser (*Internet Explorer* *cough* *cough*) whereas XML was >>>> never meant to be displayed in a browser, but transformed and then >>>> output to a browser (among many other things) through XSLT. If you use >>>> the characters directly in your XML you should be fine with the parser, >>>> although you may have to make sure your document is saved in utf-8, as >>>> most of the entity characters are above the ascii range. >>>> >>> >>> Ash >>> >>> Its not my XML (® isn't a www standard anyway) but its the xml provided by the source I have to deal with and I can't change them so I guess I'll just read the xml and then run defensing string replacements. >>> >>> Thanks for everyone's help. >>> >>> Tom >>> >>> >>> >>> -- >>> PHP General Mailing List (http://www.php.net/) >>> To unsubscribe, visit: http://www.php.net/unsub.php >>> >>> >> >> My xml file is ... >> >> <?xml version="1.0"?> >> <tag>®</tag> >> >> Using different tools the error is always along the lines of ... >> >> "This page contains the following errors: >> >> error on line 1 at column 11: Entity 'reg' not defined >> Below is a rendering of the page up to the first error." >> >> >> <?xml version="1.0"?> >> <tag>&#ae;</tag> >> >> "This page contains the following errors: >> >> error on line 2 at column 8: CharRef: invalid decimal value >> Below is a rendering of the page up to the first error." >> >> The only thing I could do was ... >> >> <?xml version="1.0"?> >> <tag>&reg;</tag> >> >> >> -- >> Richard Quadling >> Twitter : EE : Zend >> @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY >> >> -- >> PHP General Mailing List (http://www.php.net/) >> To unsubscribe, visit: http://www.php.net/unsub.php >> >> > > Couldn't you cdata wrap that value? I'm guessing not as the XML is being received is invalid. Whatever way you look at this, you have to fix the XML first. Either server side (the best option) or client side by doing straight string manipulation. -- Richard Quadling Twitter : EE : Zend @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php