json_encode详解和用法
一:详解;
json_encode($json_str,true)在一般情况下可以返回一个数组,但当$json_str的字符编码是GBK或其它时,返回的是一个
空数组,必须用iconv(‘gbk’,‘ut8//IGNORE’,$json_str)转换编码才行。
说明
string iconv ( string $in_charset , string $out_charset , string $str )
将字符串 str 从 in_charset 转换编码到 out_charset。
参数
in_charset
输入的字符集。
out_charset
输出的字符集。
如果你在 out_charset 后添加了字符串 //TRANSLIT,将启用转写(transliteration)功能。这个意思是,当一个字符不能被目标字符集所表示时,它可以通过一个或多个形似的字符来近似表达。 如果你添加了字符串 //IGNORE,不能以目标字符集表达的字符将被默默丢弃。 否则,str 从第一个无效字符开始截断并导致一个 E_NOTICE 。
str
要转换的字符串。
二:使用;
json_encode用法
1、从数据库中查询出来的数据,放在数组中
$query=mysql_query($SQL);
while($row = mysql_fetch_array($query)){
$xdata[]=$row['EventDate'];
$ydata[]=intval($row['data']);
}
2、将数据转成json
$data_arr=array($xdata,$ydata)
json_encode($data_arr);
3、HTML 页面中 AJAX调用数据
$.ajax({
type: "Get",
url: "columndata.php?r=" + Math.floor(Math.random() * 1000 + 1),
data: { 'BeginTime': "" + beginTime + "", "EndTime": "" + endTime + "" , "keyword": "" + keyword + "" },
dataType: "text",
global: false,
async: false,
success: function (strReult) {
if (strReult == "-1") { alert("fail!"); return; }
var jsondata = eval("(" + strReult + ")");
var xData = jsondata[0];
var yData = jsondata[1];
var namestr = jsondata[2];
},
error: function () {
alert("fail!");
}
});
原文链接:https://www.qiquanji.com/post/8423.html
本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。