在工作项目中有一个需求,要把数一些数据转成数组,然后再存到数库库一个字段中,个人目前知道两种方法,一种是用序列化函数serialize($arr);,还有一种是用php的json扩展自带的函数json_encode($arr);。
要把数一个数组,存到数据库的一个字段中,有两种方法,一种是用序列化函数serialize($arr);还有一种是用php的json扩展自带的函数json_encode($arr);如果json_encode对含有中文的字符进行编码时,会自动转换成unicode编码。就像这样:a:2:{s:4:”code”;s:1:”1″;s:3:”msg”;s:9:”php日志”;},虽然js上能正常处理,但是看起来还是不那爽,在php的官方网站上面找到一个函数,可以解决这个问题,也就是将数据转换json,而且中文不会被转换为unicode码。
代码如下 复制代码
$v) $result[] = php2js($k).': '.php2js($v);
return '{ ' . join(', ', $result) . ' }';
}
}
?>
使用方法一:
echo serialize(array(‘code’=>’1′,’msg’=>’php日志’));
输出:a:2:{s:4:”code”;s:1:”1″;s:3:”msg”;s:9:”php日志”;}
使用方法二:
echo json_encode(array(‘code’=>’1′,’msg’=>’php日志’));
输出:{“code”:”1″,”msg”:”phpu65e5u5fd7″}
使用方法三:
echo php2js(array(‘code’=>’1′,’msg’=>’未知错误’));
输出:{ “code”: “1”, “msg”: “php日志” }