php转换成json数据格式

{ "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
],
"authors": [
{ "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
{ "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },
{ "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }
],
"musicians": [
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
{ "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }
] }
这样的数据格式是怎么样转换的
我从数据库查出来的数据直接转换的话是
[
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
{ "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }
]
这样的!
因为是分开查询三个表 ,把它组成一条json数据,应该怎么去写

其实就是把这3个结果并成一个数组,再转就是了

例如,
$res1=mysql_query($sql1);

$res2=mysql_query($sql2);

$res3=mysql_query($sql3);

定义一个新的数组 $a = array();

将3个结果压入这个新的数组
array_push($a,$res1);

array_push($a,$res2);

array_push($a,$res3);

最后转义输出
echo json_encode($a);

LZ遇到问题不要气馁呀
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-06-06
  json和php数组 格式的互相转换,参考如下:

  $php_json = json_encode($json_arr); //把php数组格式转换成 json 格式的数据
  echo $php_json;
  $php_json = json_decode($php_json); //再把json格式的数据转换成php数组
  print_r($php_json);

  json数组
  $json = '[{"id":"22","name":"33","descn":"44"}]'; //json格式的数组转换成 php的数组
  $arr = (Array)json_decode($json);
  echo $arr[0]->id; //用对象的方式访问
第2个回答  2012-10-18
php有现成的系统函数,json_encode和json_decode,一个是将数组变成json格式字符窜,一个是将json格式字符串变成PHP数组
相似回答