使用SimpleXML在PHP中迭代XML数据

使用SimpleXML在PHP中迭代XML数据,php,xml,parsing,Php,Xml,Parsing,我有以下简单的XML数据: [Listeners] => 37 [listener] => Array ( [0] => SimpleXMLElement Object ( [IP] => 0.0.0.1 [User

我有以下简单的XML数据:

  [Listeners] => 37
            [listener] => Array
                (
                    [0] => SimpleXMLElement Object
                        (
                            [IP] => 0.0.0.1
                            [UserAgent] => curl/7.19.7 (i386-redhat-linux-gnu) libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
                            [Connected] => 1236
                            [ID] => 120
                        )

                    [1] => SimpleXMLElement Object
                        (
                            [IP] => 0.0.0.2
                            [UserAgent] => curl/7.19.7 (i386-redhat-linux-gnu) libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
                            [Connected] => 1235
                            [ID] => 121
                        )
我想展示[知识产权]

我有一个PHP脚本:

<?php

$url = "http://admin:password@media.xseu.net/admin/listclients?mount=/FavoriteFM";
$xml = simplexml_load_file($url);
echo "<pre>";
print_r($xml);
 $IP = $xml->listener->IP;
 echo $IP[0];

?>

但它不起作用。如何以正确的方式显示IP?

只需更改此行:

(您只是忘记了第一级源代码)

为此:

foreach($xml->source->listener as $ip) 
    echo $ip->IP . "<br />"; 

这应该适合您:

$url = "http://admin:password@media.xseu.net/admin/listclients?mount=/FavoriteFM";
$xml = simplexml_load_file($url);
$IP = $xml->source->listener;
    foreach($IP as $row){
      echo $row->IP;
    }
foreach($xml->source->listener as$ip)
echo$ip->ip。“
”;

您将获得array的所有IP。

您应该更改该服务的密码,该服务现在已公开。此外,如果您还没有看到它,您可以在此处游览:并了解该网站的工作原理!(在这里您还可以看到如何编辑您的问题;欢迎访问)谢谢。现在它只显示一个IP。如何显示所有ip?@DennisdeWit只需更改:
echo$ip[0]->
打印($IP)
或者您可以使用:
foreach($IP as$v)echo$v。“
foreach($IP as$v)echo$v。“
?!或者你是什么意思?我仍然只能看到一个IP地址。我的目标是制作一个可以显示所有侦听器的脚本。我想把每个IP放入一个变量中。因此,稍后,我可以使用该变量查找IP来自的国家。所以我想要一个geostat。比如:$IP=0.0.0.0.->API-->$location=Romania.BTW:你可以接受这样的答案:如何帮助你最大,如何解决你的问题!()
foreach($xml->source->listener as $ip) 
    echo $ip->IP . "<br />"; 
$url = "http://admin:password@media.xseu.net/admin/listclients?mount=/FavoriteFM";
$xml = simplexml_load_file($url);
$IP = $xml->source->listener;
    foreach($IP as $row){
      echo $row->IP;
    }