【发布时间】:2011-03-30 04:27:18
【问题描述】:
我有一个似乎无法解决的问题。当$array 为空时,下面的代码将返回一个php 错误“Node 不再存在”。如果$array 不为空,则可以正常工作。当$array 为空时,错误将显示在$prinid = $array[0]; 行。
$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);
foreach($doc as $a => $b) {
if ($a == 'principal-list') {
$array = $b->principal->attributes();
}
}
$prinid = $array[0];
if (isset($array[0])) {
$currentuser = 1;
} else {
$currentuser = 0;
}
更新:
这是我现在拥有的,我得到了:
警告:count() [function.count]:* * * * * * * 中不再存在节点
$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);
foreach($doc as $a => $b) {
if ($a == 'principal-list') {
$array = $b->principal->attributes();
}
}
$currentuser = 0;
if (isset($array) && count($array) > 0) {
$prinid = $array[0];
$currentuser = 1;
}
【问题讨论】:
-
您到底想完成什么?可能有更好的方法来布置你的代码来做这件事,它也有助于提高可读性。