PHP SimpleXML 循环问题
我正在尝试使用 xPath 进行 foreach。它工作正常并且循环遍历 XML。
我的问题是我可以以某种方式使用 while 语句吗?我基本上需要查找某个属性的每个值,但不需要查找整个 XML。我希望 foreach 一旦达到某个属性就停止。
例子:
<InvoiceRet>
<TxnID>23827-1290392819</TxnID>
<TimeCreated>2010-11-21T21:26:59-05:00</TimeCreated>
<InvoiceLineRet>
<TxnLineID>23829-1290392819</TxnLineID>
</InvoiceLineRet>
<InvoiceLineRet>
<TxnLineID>2382A-1290392819</TxnLineID>
</InvoiceLineRet>
</InvoiceRet>
<InvoiceRet>
<TxnID>2382F-1290392820</TxnID>
<InvoiceLineRet>
<TxnLineID>2382B-1290392819</TxnLineID>
</InvoiceLineRet>
<InvoiceLineRet>
<TxnLineID>2382B-1290392819</TxnLineID>
</InvoiceLineRet>
</InvoiceRet>
我基本上需要循环第一组而不是第二组。所以我希望当它到达第二个时我可以停止循环。
问题是我不知道该怎么做。
任何帮助都会很棒。
谢谢!
I am trying to do a foreach using xPath. It's working fine and looping through the XML.
My question is can I somehow use a while statement with it. I basically need to find each value of a certain attribute but not for the entire XML. I want the foreach to stop once it hits a certain attribute.
Example:
<InvoiceRet>
<TxnID>23827-1290392819</TxnID>
<TimeCreated>2010-11-21T21:26:59-05:00</TimeCreated>
<InvoiceLineRet>
<TxnLineID>23829-1290392819</TxnLineID>
</InvoiceLineRet>
<InvoiceLineRet>
<TxnLineID>2382A-1290392819</TxnLineID>
</InvoiceLineRet>
</InvoiceRet>
<InvoiceRet>
<TxnID>2382F-1290392820</TxnID>
<InvoiceLineRet>
<TxnLineID>2382B-1290392819</TxnLineID>
</InvoiceLineRet>
<InvoiceLineRet>
<TxnLineID>2382B-1290392819</TxnLineID>
</InvoiceLineRet>
</InvoiceRet>
I basically need to loop through the first set of but not the second set. So I was hoping that I can stop the loop when it hits the second .
The problem is I have no idea how to do it.
Any help would be great.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果你一直只想获得第一个,那么你可以在获得第一个之后就放弃。
If you're only looking to get the first one all the time then, you could just break the loob after getting the first one.