为了账号安全,请及时绑定邮箱和手机立即绑定

在 PHP 中使用多个查询加载 XML 数据时出现问题

在 PHP 中使用多个查询加载 XML 数据时出现问题

PHP
手掌心 2022-10-28 16:10:16
我有以下 XML 文件<response><query>hello</query><zone name="url">    <records s="*" n="0" total="0"/></zone><zone name="people">    <records s="*" n="20" total="58" next="/result?q=hello&zone=people&s=AoIIRib9grewqTU2MGRkMS02YzgzLTQxYQ%3D" nextStart="AoIIRib9GD8NaWRlbnRpddfsdfk0OWQ=">        <people id="1140172" url="/people/1140172">        </people>        <people id="1482231" url="/people/1482231">        </people>        <people id="832153" url="/people/832153">        </people>    </records></zone><zone name="collection">    <records s="*" n="20" total="496" next="/result?q=hello&zone=collection&s=AoIIQsdfszdTIyNzc3MDUzNg%3D%3D" nextStart="AoIIQ3sHAysdfdszc3MDUzNg==">        <work id="208227193" url="/work/208227193">        </work>        <work id="225096966" url="/work/225096966">        </work>        <work id="225096968" url="/work/225096968">        </work>    </records></zone><zone name="gazette">    <records s="*" n="20" total="91239" next="/result?q=hello&zone=gazette&s=AoIIRdAyNjk3NzQ%3D" nextStart="AoIIgdfgek3NzQ=">        <article id="249121748" url="/newspaper/249121748">        </article>        <article id="225072553" url="/newspaper/225072553">        </article>        <article id="249121741" url="/newspaper/249121741">        </article>    </records></zone><zone name="book">    <records s="*" n="20" total="9245" next="/result?q=hello&zone=book&s=AogxMjk1Mg%3D%3D" nextStart="AoIIQ6HewytzdTIjk1Mg==">        <work id="19554432" url="/work/19554432">        </work>        <work id="31597077" url="/work/31597077">        </work>        <work id="11135964" url="/work/11135964">        </work>    </records>  </zone></response>我正在尝试使用相同的数据在同一页面上运行多个查询,但它有一些小故障。有些“区域”会加载,有些则不会。然后在部分中,我使用以下内容来显示结果,但它不会一次加载所有区域。如果我单独运行查询,它们就可以正常工作。
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

使用 Xpath 通过名称属性而不是位置来获取区域。


$response = new SimpleXMLElement($xmlString);

$books = $response->xpath('//zone[@name="books"]/records/*');

foreach ($books as $book) {

  // ...


查看完整回答
反对 回复 2022-10-28
  • 1 回答
  • 0 关注
  • 54 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信