duanjiao3754 2014-11-12 15:31
浏览 37
已采纳

在foreach中插入xpath的动态变量

is it possible for xpath to take dynamic values inside a foreach;;

p.e i have try with the bellow code and i get: Trying to get property of non-object error

foreach ($srcov as $src) {
   $qCoverXml = $coverXml->xpath('//cover/code[.= "'.  $srcC->Code  .'" ]/parent::*');
   echo  $qCoverXml->name;
}

I'm doing something wrong; thanks

  • 写回答

1条回答 默认 最新

  • duanli0453 2014-11-12 16:48
    关注

    well, quoting simplexml documentation for xpath() method:

    Returns an array of SimpleXMLElement objects or FALSE in case of an error.

    So, there are 2 things you did wrong.

    1. you should check for error-cases
    2. you should treat result as array

    it will look something like this:

    foreach ($srcov as $src) {
        $qCoverXml = $coverXml->xpath('//cover/code[.= "'.  $srcC->Code  .'" ]/parent::*');
    
        if (false === $qCoverXml) {
            echo "ERROR: request for {$srcC->Code} failed somehow
    ";
            continue;
        }
    
        if (count($qCoverXml) == 0) {
            echo "ERROR: request for {$srcC->Code} didn't return any elements
    ";
            continue;
        }
    
        echo  $qCoverXml[0]->name."
    ";
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行