GBK的页面输出JSON格式的php函数
author:一佰互联 2019-05-01   click:147
复制代码 代码如下:
function tb_json_encode($value, $options = 0)
{
return json_encode(tb_json_convert_encoding($value, “GBK”, “UTF-8″));
}

function tb_json_decode($str, $assoc = false, $depth = 512)
{
return tb_json_convert_encoding(json_decode($str, $assoc), “UTF-8″, “GBK”);
}

function tb_json_convert_encoding($m, $from, $to)
{
switch(gettype($m)) {
case ‘integer":
case ‘boolean":
case ‘float":
case ‘double":
case ‘NULL":
return $m;

case "string":
return mb_convert_encoding($m, $to, $from);
case ‘object":
$vars = array_keys(get_object_vars($m));
foreach($vars as $key) {
$m->$key = tb_json_convert_encoding($m->$key, $from ,$to);
}
return $m;
case ‘array":
foreach($m as $k => $v) {
$m[tb_json_convert_encoding($k, $from, $to)] = tb_json_convert_encoding($v, $from, $to);
}
return $m;
default:
}
return $m;
}