duanci5913 2012-03-14 05:42
浏览 55
已采纳

simpleXML基于属性[duplicate]获取节点子节点

I am trying to parse out the value of a node I am referencing by one of its attributes. but I am not sure of the syntax

XML:

<data>

  <poster name="E-Verify" id="everify">

    <full_image url="e-verify-swa-poster.jpg"/>

    <full_other url=""/>

  </poster>


  <poster name="Minimum Wage" id="minwage">

    <full_image url="minwage.jpg"/>

    <full_other url="spa_minwage.jpg"/>

  </poster>
</data>

here is where I want to get the url value of full_image where poster id equal to minwage:

$xml = simplexml_load_file('PosterData.xml');
$main_url = $xml->full_image[name] where poster[id] = "minwage";
//something like that.
echo $main_url;

Result: minwage.jpg

If anyone has any resources that cover this stuff please share.

</div>
  • 写回答

3条回答 默认 最新

  • dongpan1308 2012-03-14 05:57
    关注

    Simply loop the poster elements and remember to cast the attribute values to strings, since you want to compare them (and probably output them) as strings:

    $xml = simplexml_load_file('PosterData.xml');
    
    foreach ($xml->poster as $poster) {
        if ((string) $poster['id'] == 'minwage') {
            echo (string) $poster->full_image['url'];
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题