dousi2553 2016-11-13 12:15 采纳率: 0%
浏览 51
已采纳

PHP中的XML不显示数组

I need to display an array PHP of data from file XML (https://pogoda.yandex.ru/static/cities.xml). I want in array all "id". Help me find the error. Thanks

<?php
 $data_file_city="https://pogoda.yandex.ru/static/cities.xml"; 
 $xml_city = simplexml_load_file($data_file_city); 

  foreach($xml_city->country as $key=>$value){
    foreach ($value->city as $key1=>$value1) {
      $id = array("$value1[country]");
        echo $id;
    }
  }
  • 写回答

1条回答 默认 最新

  • doucan8521 2016-11-13 12:27
    关注

    Every $value1 in your foreach is a SimpleXMLElement Object with attributes.

    To get attributes of such object use attributes function:

    $ids = array();
    $countries = array();
    foreach($xml_city->country as $key=>$value){
        foreach ($value->city as $key1=>$value1) { 
            $attrs = $value1->attributes();
    
            // Use `strval` function to cast attribute value to `string` type
    
            // get `id` attribute 
            $id = strval($attrs['id']);
    
            // get `country` attribute
            $country = strval($attrs['country']);
    
            echo $id, '<br />', $country;
    
            // add to array
            $ids[] = $id;
            $countries[] = $country;
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?
  • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
  • ¥15 texstudio的问题,