dongtang6718 2014-07-23 14:33
浏览 232
已采纳

PHP LDAP克服大小限制

I have a very old network box, that has PHP4 and a variation of LDAP installed on it.

Querying information isn't normally an issue when the returned results are small, but I'm trying to get all entries in one specific CN

This results in 'Warning: ldap_search() [function.ldap-search]: Partial search results returned: Sizelimit exceeded'

All the suggestions I've read have been for PHP5+ and Active directory, nothing for something this OLD.

I'm hoping you can help.

This is my very simple ldap query. $r is the connection.

$result = ldap_search($r, "cn=location", "(cn=*)");
$entry = ldap_first_entry($r, $result);

do {
    $dn = ldap_get_dn($r, $entry);
    echo "DN is $dn
";
} 
while ($entry = ldap_next_entry($r, $entry)); 

ldap_close($r);

This works until I hit the limit. I have tried changing the limit using LDAP_OPT_SIZELIMIT but obviously that didn't help.

What I'm wondering is.. is there any way to count the entries and then process them in smaller more manageable batches using something like :

$sr=ldap_list($r, "cn=location","cn>=".$last_location);

Is that possible ? any other ideas ?

Thanks

  • 写回答

1条回答 默认 最新

  • douji8033 2014-07-23 14:45
    关注

    According to php.net/manual/...ldap-search, you should set the $sizelimit parameter to 0 to disable the memory limit. It will not, however, override the LDAP server configuration, if that is the cause of the error.

    The function call will look something like the following:

    ldap_search($r, "cn=location", "(cn=*)", null, 0, 0);
    

    I'm not clear on how the filter parameter works, so you may need to change it if you get an error there. See the above link for descriptions on all of the parameters for ldap_search().

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵