首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SimpleXML回波

SimpleXML回波
EN

Stack Overflow用户
提问于 2016-09-19 10:31:34
回答 1查看 69关注 0票数 1

我正在尝试从远程xml文件回显以下输出(如果是ktg=001)。提前感谢您的帮助

我想要回显的输出:

代码语言:javascript
复制
name2
22 44

name3
55 65

位于远程url中的XML文件:

代码语言:javascript
复制
<aaa id="AA" epg="AA" ktg="001">
<Name>john</Name>
<Customer id="0001">
  <Name>name2</Name>
  <Dfr>0</Dfr>
  <Date>09/19/2016 13:20:00</Date>
  <ktopt>No</ktopt>
  <SOS type="BB" id="0002">
      <age name="df1">22</age>
      <age name="df2">44</age>
  </SOS>
</Customer>
<Customer id="0002">
  <Name>name3</Name>
  <Dfr>0</Dfr>
  <Date>09/20/2016 06:20:00</Date>
  <Ktopt>No</Ktopt>
  <SOS type="CC" id="0004">
     <age name="df1">55</age>
     <age name="df2">65</age>
  </SOS>
</Customer>
</aaa>

PHP我的例子:

代码语言:javascript
复制
<?php

$url = 'http://remotexmllocationonforexample';
$obj = simplexml_load_file($url);
  foreach ($obj->aaa as $aaa) {
    if ( $aaa['ktg'] == '001') {    
    echo  $aaa->Customer->Name ; 
    echo '  <br />';  
    echo  $aaa->Customer->SOS ;
   }
}
?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-19 11:41:50

您可以尝试以下代码:

代码语言:javascript
复制
$url = 'http://remotexmllocationonforexample';
$obj = simplexml_load_file($url);

foreach ($xml as $aaa) {
    $attr = $aaa->attributes();
     if($attr['ktg']=='001') {
        $xmlData = get_object_vars($aaa);
         foreach($xmlData['Customer'] as $cust) {
            $custDetais = get_object_vars($cust);
             echo "Name: ".$custDetais['Name'].PHP_EOL;
             foreach($custDetais['SOS'] as $sos) {
                 echo $sos[0]."\t";
            }
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39570998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档