在两个变量上接收错误未定义的索引

时间:2010-05-06 16:23:39

标签: php

使用adLDAP.php类

收到以下错误:注意:未定义的索引:第762行的/web/ee_web/include/adLDAP.php中的memberof

第762行:if (is_array($groups[0]["memberof"])) {

同样收到错误:注意:未定义的索引:在第982行的/web/ee_web/include/adLDAP.php中计算

第982行:$entries[0]["memberof"]["count"]++;

不确定我需要做些什么来解决这些错误消息,似乎脚本工作正常,但我想摆脱这些错误。

使用:http://adldap.sourceforge.net/wiki/doku.php?id=api

2 个答案:

答案 0 :(得分:2)

您可以将代码编辑为以下内容:

if(isset($groups[0]["memberof"]))
{
    if (is_array($groups[0]["memberof"])){ ... }
}

if(isset($entries[0]["memberof"]["count"]))
{
    $entries[0]["memberof"]["count"]++;
}

它可以防止您收到错误,但它不一定会处理代码原始作者的一些非常宽松的健全性检查。

答案 1 :(得分:0)

您似乎已将error_level设置为显示每个可能的错误/警告/通知,这就是您获得它的原因。

如果脚本工作正常,那么这不是错误,只是缺少检查编码器忘记放入库中。

要删除这些消息,您有两个选择:

a)在您对该库进行的调用之前使用@,例如

$var = @the_function(param1);

这样就可以避免那条消息。

b)使用error_reporting()

将错误级别设置为类似的值
error_reporting(E_ALL ^ E_NOTICE);

这会影响您正在运行的整个脚本。

取决于项目,取决于您使用什么。