当前位置: 首页 > 知识库问答 >
问题:

从ECB货币XML对象中提取数据

西门高歌
2023-03-14

我试图从ECB货币XML对象中提取交换值。这里有http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml

我可以毫无问题地加载对象,然后打印出所有数据。然而,我无法从该对象获取特定数据。

$xml_url = "http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml";

if (($response_xml_data = file_get_contents($xml_url))===false){
    echo "Error fetching XML\n";
} else {
   libxml_use_internal_errors(true);
   $data = simplexml_load_string($response_xml_data);
   if (!$data) {
       echo "Error loading XML\n";
       foreach(libxml_get_errors() as $error) {
           echo "\t", $error->message;
       }
   } else {
        echo 'type is: '.gettype($data).'<br>';
        echo $data->propertyArray;
        //echo $data->asXML();
        print_r($data);

    }
}

这是print_r的输出

SimpleXMLElement对象([Cube]=

例如,我如何从美元中获得汇率的值?阅读此线程后,我如何访问数组/对象?我仍然不知道如何访问数据。

echo $data->propertyArray;

不返回任何内容。

共有1个答案

郎鸿朗
2023-03-14

您可以迭代对象并检查每种类型的货币。

$xml_url = "http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml";
if (($response_xml_data = file_get_contents($xml_url))===false){
    echo "Error fetching XML\n";
} else {
    libxml_use_internal_errors(true);
    $data = simplexml_load_string($response_xml_data);
    if (!$data) {
        echo "Error loading XML\n";
        foreach(libxml_get_errors() as $error) {
            echo "\t", $error->message;
        }
    } else {
        foreach($data->Cube->Cube->Cube as $currency) {
            if($currency['currency'] == 'USD') {
                echo $currency['rate'];
            }
        }
    }
}
 类似资料:
  • 从数字货币说起 货币是人类文明发展过程中的一大发明,最重要的职能包括价值尺度、流通手段、贮藏手段。很难想象离开了货币,现代社会庞大而复杂的经济和金融体系还能否持续运转。 历史上,货币的形态经历了多个阶段的演化,包括实物货币、金属货币、代用货币、信用货币、电子货币、数字货币等。货币自身的价值依托也从实物价值、发行方信用价值,到今天出现的对信息系统(包括算法、数学、密码学、软件等)的信任价值。 注:中

  • 我得到错误:“com.google.gson.jsonSyntaxException:java.lang.IllegalStateException:Expected BEGIN_OBJECT但是BEGIN_ARRAY位于第1行column 283 path$.items.Promended[0].images” 我请求帮助从json对象提取数据。 我只需要删除类'images',并将'urls'

  • 货币报价最新数据 接口: currency_latest 目标地址: https://currencyscoop.com/ 描述: 获取货币报价最新数据 限量: 单次返回指定货币的最新报价数据-免费账号每月限量访问 5000 次 输入参数 名称 类型 必选 描述 base str Y base="USD" api_key str Y api_key="Please put your api key

  • 我试过... 但那就不允许便士条目了。 我想要增量按钮控制在英镑上升,但仍然想要输入便士的能力。 谢谢,1DMF

  • 我有车牌图像(图像像这些示例图像一样被裁剪)。我只想从输入图像中提取印版。 我已经应用了OpenCV Canny边缘检测器,但我不能再进一步了。有人能帮我吗? 我的最终目标是用我的公司标志替换这个标牌。 车牌图像示例:

  • Q非常业余的程序员在这里,寻求你的帮助。 我必须经常编辑这样的xml文件 使用一个相当复杂的正则表达式搜索和替换过程,我只能提取标记属性的值。(这就是我所关心的)。 但是这很耗时,而且在Python中必须有非常简单的方法来查找属性标记="SOME_TEXT"部分并将所有值放入一个数组中,然后打印出该数组(到文件中)。但是我无法弄清楚:( 我正在寻找一种不包括导入任何类型的XML库的方法,因为我想让