GBK的页面输出JSON格式的php函数

yipeiwu_com5年前PHP代码库
复制代码 代码如下:

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;
}

相关文章

PHP-FPM运行状态的实时查看及监控详解

PHP-FPM运行状态的实时查看及监控详解

前言 大家都知道PHP-FPM内置了状态页,开启后可查看PHP-FPM的详细运行状态,给PHP-FPM优化带来帮助。 打开php-fpm.conf,配置php-fpm状态页选项 p...

PHP Class SoapClient not found解决方法

要用到 SoapClient, new 了一个提示 Class ‘SoapClient' not found, 检查了下 phpinfo, 原因是当初没有编译这个扩展, 只好现在再加上了...

php中curl和file_get_content的区别

直到最近,要做一个网页小偷程序的时候才发现file_get_content已经完全不能满足需求了。我觉得,在读取远程内容的时候,file_get_content除了使用比curl便捷以外...

echo, print, printf 和 sprintf 区别

- echo  是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如:  echo $myvar1;  echo&nbs...

PHP中读取照片exif信息的方法

PHP中读取照片exif信息的方法

先来了解什么是图片的Exif信息 Exif是一种图象文件格式,它的数据存储与JPEG格式是完全相同的。实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍摄时的光圈、快门...