计数LDAP搜索中的条目数


Count Number of Entries in LDAP Search

所以我刚刚开始使用LDAP,并且正在阅读关于使用PHP进行LDAP的教程。

http://www.devshed.com/c/a/PHP/Using-PHP-With-LDAP-part-1/4/

在那里,一旦获得结果集。我遇到了两个命令/函数。。。

    <?php // print number of entries found 
    echo "Number of entries found: " . ldap_count_entries($conn, $result) . "<p>"; ?>

  <?php // get entry data as array
  $info = ldap_get_entries($conn, $result); 
  // iterate over array and print data for each entry 
  for ($i=0; $i<$info["count"]; $i++) { echo "dn is: ". $info[$i]["dn"] ."<br>";
  echo "first cn is: ". $info[$i]["cn"][0] ."<br>";
  echo "first email address is: ". $info[$i]["mail"][0] ."<p>"; 
  } ?>

那么,ldap_count_entries和$info["count"]在哪些方面不同呢?

提前感谢!

据我所知,区别主要在于是否必须从服务器检索结果。

要获得$info['count'],您必须通过ldap_get_entries从服务器检索完整结果,这可能是一件很长的事情,具体取决于结果的大小和与LDAP服务器的连接。

为了检查它是否值得付出努力,您可以使用ldap_count entries获得结果集的大小,并根据结果,您的应用程序可以决定要做什么。