php使用json代替serialize,有需要的朋友可参考一下.
需要注意的是 json_decode时返回的是object,需要json_decode("字符串",ture);后来发现也不是那么完美..
json_encode会对中文进行编码.如果含有大量的中文,那长度超过了serialize.这让人很蛋疼,网上给出的办法是对内容进行urlencode,json_enocde后再urldecode
实例代码如下:
- function jsonencode($code){
- $code = json_encode(urlencodearray($code));
- return urldecode($code);
- }
- function urlencodearray($data){
- if(is_array($data)){
- foreach($data as $key=>$val){
- $data[$key] = urlencodearray($val);
- }
- return $data;
- }else{
- return urlencode($data);
- }
- }
|