PHP 保持中文编码 json_encode 函数
2015-09-15 18:00
671 查看
最近在做微信自定义菜单,发现调用json_encode后会将中文转为unicode编码,而微信的接口却不支持。所以分享下json_encode保持中文编码的方法。
1,如果php是5.4版本以上,直接加上
JSON_UNESCAPED_UNICODE 参数即可(亲测OK)
$test = json_encode(“试试”, JSON_UNESCAPED_UNICODE);
2,先将中文字段转成urlencode,然后json_encode,最后再用urldecode,也可以保证中文不会被转成unicode
相关函数如下,亲测
1,如果php是5.4版本以上,直接加上
JSON_UNESCAPED_UNICODE 参数即可(亲测OK)
$test = json_encode(“试试”, JSON_UNESCAPED_UNICODE);
2,先将中文字段转成urlencode,然后json_encode,最后再用urldecode,也可以保证中文不会被转成unicode
相关函数如下,亲测
/************************************************************** * * 使用特定function对数组中所有元素做处理 * @param string &$array 要处理的字符串 * @param string $function 要执行的函数 * @return boolean $apply_to_keys_also 是否也应用到key上 * @access public * *************************************************************/ function arrayRecursive(&$array, $function, $apply_to_keys_also = false) { static $recursive_counter = 0; if (++$recursive_counter > 1000) { die('possible deep recursion attack'); } foreach ($array as $key => $value) { if (is_array($value)) { arrayRecursive($array[$key], $function, $apply_to_keys_also); } else { $array[$key] = $function($value); } if ($apply_to_keys_also && is_string($key)) { $new_key = $function($key); if ($new_key != $key) { $array[$new_key] = $array[$key]; unset($array[$key]); } } } $recursive_counter--; } /************************************************************** * * 将数组转换为JSON字符串(兼容中文) * @param array $array 要转换的数组 * @return string 转换得到的json字符串 * @access public * *************************************************************/ function JSON($array) { arrayRecursive($array, 'urlencode', true); $json = json_encode($array); return urldecode($json); }
相关文章推荐
- PHP 下载保存文件到本地
- ThinkPHP开发必备composer扩展包
- Yii上传文件(头像)详解(一)
- 搭建一个FTP服务器
- PHP 正则表达式
- php处理防止XSS攻击类
- PHP Session与Cookie详解
- PHP中的Session和Cookie应用
- PHP开发中常见的安全问题详解和解决方法
- PHP CURL CURLOPT参数说明
- PHP防止SQL注入和XSS攻击
- PHP 使用cookie实现记住登录状态
- 【笔记】PHPExcel学习笔记(不断更新中...)
- FTP提供服务的过程简介 原理
- PHP 记住密码自动登陆
- php实例-继承
- 89 php 登陆验证
- 一个简单的PHP Web论坛
- laravel yii 区别 symfony route 参数
- RTP协议分析