json_encode 函数

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 15:50   2478   0

Json_encode ()

(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

注:某些浏览器可能支持方面有些问题(例如:360,遨游);

作用:

对变量进行 JSON 编码。

说明:
string json_encode ( mixed $value )
返回 value 值的 JSON 形式。

mixed 说明一个参数可以接受多种不同的(但并不必须是所有的)类型.

待编码的 value ,除了resource 类型之外,可以为任何数据类型

该函数只能接受 UTF-8 编码的数据(译注:指字符/字符串类型的数据)

编码成功则返回一个以 JSON 形式表示的 string (字符串) 。

特别注意:

如果内容为中文,输出null!

因为json仅仅转义encoding编码 !

且js 中decodeURI 仅仅支持utf8 转码。


解决的普遍方法:

先将类中的中文字段进行url编码(urlencode),然后再对对象进行json编码(jsonencode),最后url解码(urldecode)json,即最终的json,里面的中文依旧是那个中文!

例如:

1、

<?php

foreach ($ajax as $key=>$val)
{
$ajax[$key]['name'] = urlencode(iconv('gb2312','utf-8',$val['name']));
}
echo json_encode($json);

?>


2、

<?php
foreach ($ajax as $key=>$val)
{
$ajax[$key]['name'] =
urlencode(iconv('gb2312',
'utf-8',$val['name']));
}
echo json_encode($json);
?>

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP