json将数组(json_encode)转成字符串输出
<?php
$result = array(
array('name'=>'fdipzone','gender'=>'male'),
array('name'=>'tom','gender'=>'male'),
array('name'=>'lucy','gender'=>'female'),
);
>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title> New Document </title>
</head>
<body>
<script type="text/javascript">
var data = <?php echo json_encode($result); ?>;
for(var i=0,len=data.length; i<len; i++){
document.write(data[i].name + ' '+data[i].gender+'<br>');
}
</script>
</body>
</html>
//
string'[{"name":"fdipzone","gender":"male"},{"name":"tom","gender":"male"},{"name":"lucy","gender":"female"}]'(length=102)
fdipzone male
tom male
lucy female
=======================================
json_decode是php5.2.0之后新增的⼀个PHP内置函数,其作⽤是对JSON 格式的字符串进⾏编码.
json_decode的语法规则:json_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] ) json_decode 接受⼀个 JSON 格式的字符串并且把它转换为 PHP 变量 ,当该参数$assoc为 TRUE 时,将返回 array 否则返
回 object 。
$obj = json_decode($result,TRUE);
//echo $result;
var_dump($obj);
输出:
array (size=2)
'err_no' =>int0
'err_msg' =>string'success'(length=7)
========================================
PHP⽀持两种数组,⼀种是只保存"值"(value)的索引数组(indexed array),另⼀种是保存"名值对"(name/value)的关联数组(associative array)。
由于javascript不⽀持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,⽽将关联数组(associative array)转为对象格式。数组转换成字符串
我们来看⼀个实例:
1
<?php
2
$json = '{"a":"php","b":"mysql","c":3}';
3
$json_Class=json_decode($json);
4
$json_Array=json_decode($json, true);
5
print_r($json_Class);
6
print_r($json_Array);
7
8
>
程序输出:
stdClass Object (
[a] => php
[b] => mysql
[c] => 3 )
Array (
[a] => php
[b] => mysql
[c] => 3 )
在上⾯代码的前提下
访问对象类型$json_Class的a的值
1
echo $json_Class->{'a'};
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论