九月丶

JSON数据美化函数
<?php if (!function_exists('json_indent')) { /** ...
扫描右侧二维码阅读全文
30
2018/01

JSON数据美化函数

<?php
if (!function_exists('json_indent')) {
    /**
     * JSON数据美化
     * @param string $json json字符串
     * @return string
     */
    function json_indent($json) { 
        $result = ''; 
        $pos = 0; 
        $strLen = strlen($json); 
        $indentStr = '  '; 
        $newLine = "\n"; 
        $prevChar = ''; 
        $outOfQuotes = true; 
        for ($i=0; $i<=$strLen; $i++) { 
            $char = substr($json, $i, 1);
            if ($char == '"' && $prevChar != '\\') { 
                $outOfQuotes = !$outOfQuotes;
            } else if(($char == '}' || $char == ']') && $outOfQuotes) { 
                $result .= $newLine; 
                $pos --; 
                for ($j=0; $j<$pos; $j++) { 
                    $result .= $indentStr; 
                } 
            }
            $result .= $char;
            if (($char == ',' || $char == '{' || $char == '[') && $outOfQuotes) { 
                $result .= $newLine; 
                if ($char == '{' || $char == '[') { 
                    $pos ++; 
                } 
                for ($j = 0; $j < $pos; $j++) { 
                    $result .= $indentStr; 
                } 
            } 
            $prevChar = $char; 
        } 
        return $result; 
    }
}
最后修改:2018 年 02 月 11 日 11 : 29 AM
如果觉得我的文章对你有用,请随意赞赏

发表评论