(PHP ActiveX) Decode 2-digit Hex Escaped
Demonstrates how to replace escaped us-ascii chars such as \x7b and \x22 with the chars.
<?php
// We have the following string with some us-ascii chars escaped like this:
$s = '\x7b\x22responseContext\x22:\x7b\x22';
// Note: The above escaping does not conform to any standard format (as far as I know).
// Chilkat does not have anything to decode from the above.
// However, we can 1st transform into a standard format, and then decode..
// JSON escapes chars outside us-ascii like this: "Hello, \ud83d\ude03!"
// We can transform the above to this: "\u007b\u0022responseContext\u0022:\u007b\u0022"
// And then decode..
// For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.StringBuilder')
$sb = new COM("Chilkat.StringBuilder");
$sb->Append($s);
$numReplaced = $sb->Replace('\\x','\\u00');
// Now decode from "json" escapes
$sb->Decode('json','utf-8');
// Show the decoded string
print $sb->getAsString() . "\n";
// Here's the result: {"responseContext":{"
?>
|