PHP 完全中文手册-第四章-25

王朝php·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

本函数库共有 25 个函数

LDAP (Lightweight Directory Access Protocol) 是一种轻量的目录存取协议,提供客户从各个角落连接到目录服务器中。在 RFC 1777 及 RFC 1778 中对 LDAP 有较深入的描述,亦可参考 Netscape 站上有关 LDAP 方面的资料。

在 LDAP 的协议之中,很像硬盘目录结构或倒过来的树状结构。LDAP 的根就是全世界,第一级是属于国别 (countries) 性质的层级,之后可能会有公司 (organization) 的层级,接着是部门 (organizationalUnit),再来为个人。而就像文件,每个人都会有所谓的显名 (distinguished name, 简称 dn),dn 可能像酱子 cn=John Smith,ou=Accounts,o=My Company,c=US。

<?php

// 本例使用到 connect, bind, search, interpret search

// result, close connection 等等 LDAP 的功能。

echo "<h3>LDAP 搜寻测试</h3>";

echo "连接中 ...";

$ds=ldap_connect("localhost"); // 先连上有效的 LDAP 服务器

echo "连上 ".$ds."<p>";

if ($ds) {

echo "Binding ...";

$r=ldap_bind($ds); // 匿名的 bind,为只读属性

echo "Bind 返回 ".$r."<p>";

echo "Searching for (sn=S*) ..."; // 找寻 S 开头的姓氏

$sr=ldap_search($ds,"o=My Company, c=US", "sn=S*");

echo "Search 返回 ".$sr."<p>";

echo "S 开头的姓氏有 ".ldap_count_entries($ds,$sr)." 个<p>";

echo "取回姓氏资料 ...<p>";

$info = ldap_get_entries($ds, $sr);

echo "资料返回 ".$info["count"]." 笔:<p>";

for ($i=0; $i<$info["count"]; $i++) {

echo "dn 为: ". $info[$i]["dn"] ."<br>";

echo "cn 为: ". $info[$i]["cn"][0] ."<br>";

echo "email 为: ". $info[$i]["mail"][0] ."<p>";

}

echo "关闭链接";

ldap_close($ds);

} else {

echo "<h4>无法连接到 LDAP 服务器</h4>";

}

?>

欲使用 LDAP 服务器功能要先在 Web 服务器安装 LDAP 客户端程序,较着名的有美国密西根大学的 ldap-3.3 套件或者是 Netscape 的 Directory SDK。可到下列网址找回来安装

Netscape http://developer.netscape.com/tech/directory/

密西根大学 http://www.umich.edu/~dirsvcs/ldap/index.html

OpenLDAP 计划 http://www.openldap.com

LDAP World http://elvira.innosoft.com/ldapworld

ldap_add:

增加 LDAP 名录的条目。

ldap_mod_add:

增加 LDAP 名录的属性。

ldap_mod_del:

删除 LDAP 名录的属性。

ldap_mod_replace:

新的 LDAP 名录取代旧属性。

ldap_bind:

系住 LDAP 目录。

ldap_close:

结束 LDAP 链接。

ldap_connect:

连上 LDAP 服务器。

ldap_count_entries:

搜寻结果的数目。

ldap_delete:

删除指定资源。

ldap_dn2ufn:

将 dn 转成易读的名字。

ldap_explode_dn:

切开 dn 的字段。

ldap_first_attribute:

取得第一笔资源的属性。

ldap_first_entry:

取得第一笔结果代号。

ldap_free_result:

释放返回资料内存。

ldap_get_attributes:

取得返回资料的属性。

ldap_get_dn:

取得 DN 值。

ldap_get_entries:

取得全部返回资料。

ldap_get_values:

取得全部返回值。

ldap_list:

列出简表。

ldap_modify:

改变 LDAP 名录的属性。

ldap_next_attribute:

取得返回资料的下笔属性。

ldap_next_entry:

取得下一笔结果代号。

ldap_read:

取得目前的资料属性。

ldap_search:

列出树状简表。

ldap_unbind:

结束 LDAP 链接。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航