On 04/27/2007 11:39 PM, Tyler Lawson wrote:
Hello,

I hope this is the right place for this, as I'd like to post a patch for
your consideration to the way the JSON handles ampersands.  I have had
problems sending JSON data back and forth over POST requests, where an
ampersand separates variables.  This patch will convert "&" into "\u0026",
which will allow ampersands to travel freely and be parsed by any valid JSON
decoder.

I believe a short reproduce case would explain it better.

This has been applied against php-5.2.1

--- json.c      2007-01-12 07:17:32.000000000 -0500
+++ my_json.c    2007-04-27 15:12:44.000000000 -0400
@@ -301,6 +301,11 @@
                     smart_str_appendl(buf, "\\t", 2);
                 }
                 break;
+            case '&':
+                {
+                    smart_str_appendl(buf, "\\u0026", 6);
+                }
+                break;
             default:
                 {
                     if (us < ' ' || (us & 127) == us)


Tyler



--
Wbr, Antony Dovgal

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to