我正在尝试解析XML文件中的所有货币值。我想从XML文件中获取此数组。:
Array
(
[USD] => 1.0501
[RUB] => 0.0165
[TRY] => 0.4244
)
但我得到了这个:
Array
(
[USD] => SimpleXMLElement Object
(
[0] => 1.0501
)
[RUB] => SimpleXMLElement Object
(
[0] => 0.0165
)
[TRY] => SimpleXMLElement Object
(
[0] => 0.4244
)
)
这是我的PHP代码:
<?php
@header('Content-Type: text/html; charset=utf-8;');
$date = date ("d.m.Y");
$cur_arr = array("TRY", "RUB", "USD");
$url = simplexml_load_file("http://cbar.az/currencies/" .$date.".xml");
foreach($url->ValType[1]->Valute as $key=>$value){
$attr = $value->attributes();
if(in_array($attr["Code"],$cur_arr)){
$data[''.$attr["Code"].''] = $value->Value[0];
}
}
print_r($data);
?>
我想得到一个像第一个例子的数组。我尝试了很多代码但是我的结果上有SimpleXMLElement对象。我怎么能像第一个例子那样得到它?
答案 0 :(得分:0)
在值之前添加(array)
foreach($url->ValType[1]->Valute as $key=>$value){
$attr = $value->attributes();
if(in_array($attr["Code"],$cur_arr)){
$value = (array)$value->Value;
$data[''.$attr["Code"].''] = $value[0];
}
}
这将返回
array(3) {
["USD"]=>
string(6) "1.0501"
["RUB"]=>
string(6) "0.0165"
["TRY"]=>
string(6) "0.4244"
}