我正在创建一个名为$subArray
的数组。这个数组必须用$child->getName() => $child
填充,从XML文档中获取。
$subArray = array(
foreach($person->children() as $child){
$child->getName() => $child;
}
);
但这似乎不起作用,因为我在使用=>
时无法使用array_push
,并且我无法在数组中使用foreach循环。我该如何解决这个问题?
这是我的全部功能:
function get_xml_arr($xmlURL){
$xml=simplexml_load_file($xmlURL) or die ("XML not found");
$array = array();
foreach($xml->person as $person){
$subArray = array(
foreach($person->children() as $child){
$child->getName() => $child;
}
);
array_push($array, $subArray);
}
return $array;
}
答案 0 :(得分:2)
您可以使用$ child-> getName()作为数组的索引
$subArray = array();
foreach($xml->person as $person) {
foreach($person->children() as $child)
$subArray[$child->getName()] = $child;
$array[] = $subArray;
}