3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $source = json_encode([new StdClass, "This is a test", "Foo's bar", 1, 5]); $escaped = implode("", array_map(function($char) { if (ctype_alnum($char)) { return $char; } $bytelen = mb_strlen($char, '8bit'); if ($bytelen === 1) { return '\\x' . str_pad(dechex(ord($char)), 2, '0', STR_PAD_LEFT); } $result = '\\u'; for ($i = 0; $i < $bytelen; $i++) { $result .= str_pad(dechex(ord($char[$i])), 2, '0', STR_PAD_LEFT); } return $result; }, str_split($source, 1))); var_dump($escaped);
based on T72Ep
Output for 5.4.0 - 7.2.0
string(88) "\x5b\x7b\x7d\x2c\x22This\x20is\x20a\x20test\x22\x2c\x22Foo\x27s\x20bar\x22\x2c1\x2c5\x5d"
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.3.29
Parse error: syntax error, unexpected '[', expecting ')' in /in/bs0Qe on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected '[', expecting ')' in /in/bs0Qe on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `')'' in /in/bs0Qe on line 3
Process exited with code 255.