【发布时间】:2015-07-27 09:30:35
【问题描述】:
简介
我有一些 SQL 代码。我在 php 的 while 循环中逐个代码,并在 XML 提要中搜索这些代码。
程序代码
我有以下程序代码
$x_search = $xml->xpath("//Item[@Sort='$sort']");
if(!$x_search){
$x_Id = $x_search[0]->attributes()->Id;
echo $sort." - ".$x_Id."<BR />";
}
问题
有可能某些代码不在 SQL 中。所以我收到了这个错误信息:
Undefined offset: 0 in
如果在 XML 中找到 $x_Id = $x_search[0]->attributes()->Id; 之类的怎么办?
我已经试过了:
- $x_search = $xml->xpath("//*[@Sort='$sort']");
- if(!empty($x_search)){
- if(isset($x_search)){
示例 XML:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Item Id="12860" IdP="-2147483648" Sort="0001KC" Name="Computers">
<StoItem />
</Item>
</Root>
$sort 的示例:
00004M
12860
12859
12859
12861
12861
12862
12862
12863
12863
12864
谢谢
【问题讨论】:
-
您需要在问题中包含 XML 和
$sort变量的值。消息说你有一个空数组,你的 Xpath 表达式不匹配任何元素节点。 -
@ThW 我不明白你的意思。可以举个例子吗?
-
不,我不能,您的问题是缺少 XML 和部分表达式。我不知道你在哪个 XML 上使用了哪个表达式。
-
@ThW XML 在我的问题下方。
-
@ThW 而 $sort 是 SQL 中包含代码的变量。我需要从 SQL 中获取代码,在 XML 中找到它并从这个 XML 中给我一个 Id。问题是 $sort 是否包含不在 XML 中的代码。我需要解决这种情况。