Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function json_encode_pretty($value, $options = 0, $indentationCharacter = ' ')
- {
- $string = json_encode($value, $options);
- $out = '';
- $indent = 0;
- $istext = false;
- for($i = 0; $i < strlen($string); $i++)
- {
- $character = substr($string, $i, 1);
- $breakBefore = $breakAfter = false;
- $charBefore = $charAfter = '';
- if($character === '"' && ($i > 0 && substr($string, $i - 1, 1) !== '\\'))
- $istext = !$istext; // toggle
- if(!$istext)
- switch($character)
- {
- case '[':
- case '{':
- $indent++;
- case ',':
- $breakAfter = true;
- break;
- case ']':
- case '}':
- $indent--;
- $breakBefore = true;
- break;
- case ':':
- $charBefore = $charAfter = ' ';
- break;
- }
- $out .= ($breakBefore ? PHP_EOL.str_repeat($indentationCharacter, $indent) : '')
- . $charBefore.$character.$charAfter
- . ($breakAfter ? PHP_EOL.str_repeat($indentationCharacter, $indent) : '')
- ;
- }
- return $out;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement