日期:2014-05-17  浏览次数:20513 次

关于PHP循环生成数组的问题,望大虾们赐教。。。。
做了一个音乐搜索的接口,想要输出JSON格式

返回的单条数据是:

$arr = array("url"=>"$id","name"=>"$name","singer"=>"$singer","album"=>"$album") ;

怎么样把所有的数据循环成一个二维数组(是二维吗?)

输出如下格式的JSON

"list":[{"Song":" 歌曲名 ","Name":" 歌手 ","Album":" 专辑 一般为空 "},{…………}]

然后,最后会把数组json_encode 输出来!

------解决方案--------------------
PHP code
//数据构造为下面这种形式的数组
$ar = array('List' => array(
    0 => array('Song' => 's1', 'Name' => 'n1'),
    1 => array('Sone' => 's2', 'Name' => 'n2')
));

echo json_encode($ar);

------解决方案--------------------
你的json 数据和 数组关系在什么地方?
"list":[{"Song":" 歌曲名 ","Name":" 歌手 ","Album":" 专辑 一般为空 "},{…………}]

Song=name? name=singer?

$arr = array("url"=>"0","name"=>"旧情绵绵","singer"=>"张学友","album"=>"雪狼湖") ;
$arr2 = array("url"=>"1","name"=>"狮子座","singer"=>"曾哥","album"=>"信曾哥") ;
$arr3 = array("url"=>"2","name"=>"我的","singer"=>"春哥","album"=>"信春哥上本科") ;

$array[]=$arr;
$array[]=$arr2;
$array[]=$arr3;

echo json_encode($array,JSON_UNESCAPED_UNICODE);

php 5.4+UTF8
------解决方案--------------------
建立一个数组,然后使用array_push()加数据,再转换成你要的东西。