我正在生成一个php数组,然后将其转换为xml播放列表。将数组转换为xml没有问题,但我在生成数组时遇到问题。我从DB获取数据并想要使用它。我的代码就像轰鸣声 -
$songs2008 = get_data("musics", "where year='2008'");
$mysongs = array();
foreach($songs2008 as $k1=>$v1){
$entry = array(
"url"=>"songs/main_songs/".$v1[file_name],
"songname"=>$v1[song_title],
"artist"=>$v1[artist]
);
array_push($mysongs, $entry);
}
,数组是 -
$array = array(
"settings"=>array(
"width"=>"316",
"songs"=>array(
"albumArt"=>array(
"url"=>"songs/2008.jpg",
"entries"=>array(
"entry"=>$mysongs['0'],
"entry"=>$mysongs['1'],
"entry"=>$mysongs['2'],
----------------------
----------------------
)
)
)
);
它没有参加参赛作品。数组键是相同的(条目);所以只有一个展示。有什么办法吗?还有其他办法吗?请帮忙。
答案 0 :(得分:1)
这是因为你不能多次使用'entry'作为索引。尝试:
"entries" => $mysongs
@see:http://php.net/manual/de/language.types.array.php进一步阅读php数组
但是要小心,在使用它时,你可能会遇到一些创建xml代码的问题。因为我敢打赌你使用数组键作为标签名称!
答案 1 :(得分:0)
不要将数组键命名为“entry”
$array = array(
"settings"=>array(
"width"=>"316",
"songs"=>array(
"albumArt"=>array(
"url"=>"songs/2008.jpg",
"entries"=>array(
$mysongs['0'],
$mysongs['1'],
$mysongs['2'],
----------------------
----------------------
)
)
)
);