php 处理 json_encode 中文显示问题

/**
 * 对数组和标量进行 urlencode 处理
 * 通常调用 wphp_json_encode() 
 * 处理 json_encode 中文显示问题
 * @param array $data
 * @return string
 */
function wphp_urlencode($data) {
	if (is_array($data) || is_object($data)) {
		foreach ($data as $k => $v) {
			if (is_scalar($v)) {
				if (is_array($data)) {
					$data[$k] = urlencode($v);
				} else if (is_object($data)) {
					$data->$k = urlencode($v);
				}
			} else if (is_array($data)) {
				$data[$k] = wphp_urlencode($v); //递归调用该函数
			} else if (is_object($data)) {
				$data->$k = wphp_urlencode($v);
			}
		}
	}
	return $data;
}
/**
 * json 编码
 * 
 * 解决中文经过 json_encode() 处理后显示不直观的情况
 * 如默认会将"中文"变成"\u4e2d\u6587",不直观
 * 如无特殊需求,并不建议使用该函数,直接使用 json_encode 更好,省资源
 * json_encode() 的参数编码格式为 UTF-8 时方可正常工作
 * 
 * @param array|object $data
 * @return array|object
 */
function ch_json_encode($data) {	
	$ret = wphp_urlencode($data);
	$ret = json_encode($ret);
	return urldecode($ret);
}

  

  

php 处理 json_encode 中文显示问题

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。