php怎么读取远程xml文件并转化为数组

藏色散人
发布: 2023-03-13 14:08:02
原创
1866 人浏览过

php读取远程xml文件并转化为数组的方法:1、创建一个PHP示例文件;2、通过“simplexml_load_file”取得xml对象;3、循环把数据对象转化为数组即可。

php怎么读取远程xml文件并转化为数组

本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑

php怎么读取远程xml文件并转化为数组?

PHP读取远程xml文件并转化为数组:

    远程文件如下:http://api.wycq.521g.com/game/mrt_consume/xyg ,打开是一个xml文件,内容是一个游戏的充值排名和不同名次奖励信息,需要取出前十名的信息和奖励信息用于展示,

    实现代码如下:

public function index()
    {
        $url = "http://api.wycq.521g.com/game/mrt_consume/xyg";
        $contentxml = simplexml_load_file($url);  //取得xml对象,需要转化为数组
        $ranks = array();
        for($i=0;$i<=9;$i++)
        {
            $temp_player = (array)$contentxml->ranking->player[$i];  //循环把条排名数据对象转化为数组
            $ranks[$i+1] = $temp_player['@attributes'];    //取出数组中相应的属性值
        }
        $awards = array();
        for($i=0;$i<=4;$i++)
        {
            $awards[$i] = (array)$contentxml->awards->award[$i];  //循环把奖励数据对象转化为数组
        }
        $res_awards = array();
        foreach($awards as $k=>$v)
        {
            $res_awards[$k]["caption"] = $v['@attributes']["caption"];  //进一步处理把数组处理干净
            $res_awards[$k]["items"] = array();
            foreach((array)$v["items"] as $m =>$n)
            {
                $res_awards[$k]["items"] = $n;
            }
        }
        for($j=0;$j<=4;$j++)
        {
            foreach($res_awards[$j]["items"] as $p=>$q)
            {
                $temp_q = (array)$q;
                $res_awards[$j]["items"][$p] = $temp_q['@attributes'];
            }
        }
        $this->_data["ranks"] = $ranks;
        $this->_data["res_awards"]= $res_awards;
        $this->load->view('hd/wymingrentang/wymingrentang', $this->_data);  //指定view页输出数据
    }
登录后复制

推荐学习:《PHP视频教程

以上是php怎么读取远程xml文件并转化为数组的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!