note 102091 added to function.json-encode

From: Date: Wed, 26 Jan 2011 22:00:06 +0000
Subject: note 102091 added to function.json-encode
Groups: php.notes 
Request: Send a blank email to php-notes+get-176359@lists.php.net to get a copy of this message
This is intended to be a simple readable json encode function for PHP 5.3+ (and licensed under GNU/AGPLv3 or GPLv3 like you prefer): <?php function json_readable_encode($in, $indent = 0, $from_array = false) { $_myself = __FUNCTION__; $_escape = function ($str) { return preg_replace("!([\b\t\n\r\f\"\\'])!", "\\\\\\1", $str); }; $out = ''; foreach ($in as $key=>$value) { $out .= str_repeat("\t", $indent + 1); $out .= "\"".$_escape((string)$key)."\": "; if (is_object($value) || is_array($value)) { $out .= "\n"; $out .= $_myself($value, $indent + 1); } elseif (is_bool($value)) { $out .= $value ? 'true' : 'false'; } elseif (is_null($value)) { $out .= 'null'; } elseif (is_string($value)) { $out .= "\"" . $_escape($value) ."\""; } else { $out .= $value; } $out .= ",\n"; } if (!empty($out)) { $out = substr($out, 0, -2); } $out = str_repeat("\t", $indent) . "{\n" . $out; $out .= "\n" . str_repeat("\t", $indent) . "}"; return $out; } ?> ---- Server IP: 195.221.21.36 Probable Submitter: 88.166.136.24 ---- Manual Page -- http://www.php.net/manual/en/function.json-encode.php Edit -- https://master.php.net/note/edit/102091 Del: integrated -- https://master.php.net/note/delete/102091/integrated Del: useless -- https://master.php.net/note/delete/102091/useless Del: bad code -- https://master.php.net/note/delete/102091/bad+code Del: spam -- https://master.php.net/note/delete/102091/spam Del: non-english -- https://master.php.net/note/delete/102091/non-english Del: in docs -- https://master.php.net/note/delete/102091/in+docs Del: other reasons-- https://master.php.net/note/delete/102091 Reject -- https://master.php.net/note/reject/102091 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#176359) next »