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

 ID:                 54214
 Updated by:         ahar...@php.net
 Reported by:        trenjeska+php at gmail dot com
 Summary:            DOMDocument::createTextNode allows low ascii without
                     exception
-Status:             Open
+Status:             Bogus
 Type:               Bug
 Package:            DOM XML related
 Operating System:   windows server
 PHP Version:        5.2.17
 Block user comment: N
 Private report:     N

 New Comment:

The XML specification defines the list of valid characters thusly:



Char ::= [#x1-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]



In theory, therefore, 0x06 actually falls into that range.



In practice, what happens is that restricted characters can't be
serialised by libxml, so while you can create the DOMText object
(correctly), you'll get a warning on output:



Warning: DOMDocument::saveXML(): xmlEscapeEntities : char out of range
in /tmp/test.php on line 9



This seems reasonable to me -- you still get a warning, just at a
different point.



Closing.


Previous Comments:
------------------------------------------------------------------------
[2011-03-10 17:59:13] trenjeska+php at gmail dot com

Description:
------------
---

>From manual page:
http://nl3.php.net/manual/en/domdocument.createtextnode.php

---

createtextnode still returns the DOMText if there is low-ascii in the
string.

It should return false. DOMDocument is there to be used to make sure you
output well-formed xml. Now it silently creates invalid xml, even though
the proper functions have been used.

MSXML _does_ except at this point.

Test script:
---------------
.createTextNode("Mensje Francina")



There is a low ascii (0x06) in front of the "F" in there for copy-paste
pleasures

Expected result:
----------------
FALSE

Actual result:
--------------
DOMText node


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



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

Reply via email to