​Hello. I saw that JS supports the x-notation (\x40) and u-notation (\u0040), but PHP only supports u-notation. There some reason for that?
JSON.parse('"\x40"'); // => @ JSON.parse('"\u0040"'); // => @ While PHP: json_decode('"\\u0040"'); // => @ json_decode('"\\x40"'); // => null (Syntax error) The json.org really don't seems doc the x-notation version, but some pages does: http://www.javascriptkit.com/jsref/escapesequence.shtml The same is valid to json_encode('@'), it will stringify to '\u0040' instead of the most simplified version '\x40'. I don't know if there are some reason for that, but I think that, at least, is reasonable to json_decode() supports that. -- David Rodrigues