📄 group.php-25.htm
字号:
<html>
<head>
<meta content="text/html; charset=gb2312" http-equiv=Content-Type>
<title>LDAP 目录协议函数库</title>
<style type="text/css">
a {text-decoration: none;color:#6666ff;}
a:hover {color:#ff0000;}
</style>
</head>
<body bgcolor=ffffff leftmargin=0 topmargin=0 marginheight=0 marginwidth=0>
<p>
<div align=center><table border=0 width=70%><tr>
<td valign=middle width=20><hr size=1 width=100%></td>
<td valign=middle nowrap><font color=e06060 size=+2><b>LDAP 目录协议函数库</b></font></td>
<td valign=middle width=100%><hr size=1 width=100%></td>
</tr></table></div><p>
<div align=center><table border=0 width=70%><tr><td>
<div align=right>本函数库共有 25 个函数</div><p><table border=0 cellpadding=12 cellspacing=0><tr><td bgcolor=e0e0ff>LDAP (Lightweight Directory Access Protocol) 是一种轻量的目录存取协议,提供客户从各个角落连接到目录服务器中。在 RFC 1777 及 RFC 1778 中对 LDAP 有较深入的描述,亦可参考 Netscape 站上有关 LDAP 方面的资料。<p>
在 LDAP 的协议之中,很像硬盘目录结构或倒过来的树状结构。LDAP 的根就是全世界,第一级是属于国别 (countries) 性质的层级,之后可能会有公司 (organization) 的层级,接着是部门 (organizationalUnit),再来为个人。而就像文件,每个人都会有所谓的显名 (distinguished name, 简称 dn),dn 可能像酱子 cn=John Smith,ou=Accounts,o=My Company,c=US。
<p><font color="#000000">
<font color="#0000BB"><?php<br></font><font color="#FF8000">// 本例使用到 connect, bind, search, interpret search<br>// result, close connection 等等 LDAP 的功能。<br></font><font color="#007700">echo </font><font color="#DD0000">"<h3>LDAP 搜寻测试</h3>"</font><font color="#007700">;<br>echo </font><font color="#DD0000">"连接中 ..."</font><font color="#007700">;<br></font><font color="#0000BB">$ds</font><font color="#007700">=</font><font color="#0000BB">ldap_connect</font><font color="#007700">(</font><font color="#DD0000">"localhost"</font><font color="#007700">); </font><font color="#FF8000">// 先连上有效的 LDAP 服务器<br></font><font color="#007700">echo </font><font color="#DD0000">"连上 "</font><font color="#007700">.</font><font color="#0000BB">$ds</font><font color="#007700">.</font><font color="#DD0000">"<p>"</font><font color="#007700">;<br><br>if (</font><font color="#0000BB">$ds</font><font color="#007700">) { <br> echo </font><font color="#DD0000">"Binding ..."</font><font color="#007700">; <br> </font><font color="#0000BB">$r</font><font color="#007700">=</font><font color="#0000BB">ldap_bind</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">); </font><font color="#FF8000">// 匿名的 bind,为只读属性<br> </font><font color="#007700">echo </font><font color="#DD0000">"Bind 返回 "</font><font color="#007700">.</font><font color="#0000BB">$r</font><font color="#007700">.</font><font color="#DD0000">"<p>"</font><font color="#007700">;<br> echo </font><font color="#DD0000">"Searching for (sn=S*) ..."</font><font color="#007700">; </font><font color="#FF8000">// 找寻 S 开头的姓氏<br> </font><font color="#0000BB">$sr</font><font color="#007700">=</font><font color="#0000BB">ldap_search</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">,</font><font color="#DD0000">"o=My Company, c=US"</font><font color="#007700">, </font><font color="#DD0000">"sn=S*"</font><font color="#007700">); <br> echo </font><font color="#DD0000">"Search 返回 "</font><font color="#007700">.</font><font color="#0000BB">$sr</font><font color="#007700">.</font><font color="#DD0000">"<p>"</font><font color="#007700">;<br> echo </font><font color="#DD0000">"S 开头的姓氏有 "</font><font color="#007700">.</font><font color="#0000BB">ldap_count_entries</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">,</font><font color="#0000BB">$sr</font><font color="#007700">).</font><font color="#DD0000">" 个<p>"</font><font color="#007700">;<br> echo </font><font color="#DD0000">"取回姓氏资料 ...<p>"</font><font color="#007700">;<br> </font><font color="#0000BB">$info </font><font color="#007700">= </font><font color="#0000BB">ldap_get_entries</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">, </font><font color="#0000BB">$sr</font><font color="#007700">);<br> echo </font><font color="#DD0000">"资料返回 "</font><font color="#007700">.</font><font color="#0000BB">$info</font><font color="#007700">[</font><font color="#DD0000">"count"</font><font color="#007700">].</font><font color="#DD0000">" 笔:<p>"</font><font color="#007700">;<br> for (</font><font color="#0000BB">$i</font><font color="#007700">=</font><font color="#0000BB">0</font><font color="#007700">; </font><font color="#0000BB">$i</font><font color="#007700"><</font><font color="#0000BB">$info</font><font color="#007700">[</font><font color="#DD0000">"count"</font><font color="#007700">]; </font><font color="#0000BB">$i</font><font color="#007700">++) {<br> echo </font><font color="#DD0000">"dn 为: "</font><font color="#007700">. </font><font color="#0000BB">$info</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">][</font><font color="#DD0000">"dn"</font><font color="#007700">] .</font><font color="#DD0000">"<br>"</font><font color="#007700">;<br> echo </font><font color="#DD0000">"cn 为: "</font><font color="#007700">. </font><font color="#0000BB">$info</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">][</font><font color="#DD0000">"cn"</font><font color="#007700">][</font><font color="#0000BB">0</font><font color="#007700">] .</font><font color="#DD0000">"<br>"</font><font color="#007700">;<br> echo </font><font color="#DD0000">"email 为: "</font><font color="#007700">. </font><font color="#0000BB">$info</font><font color="#007700">[</font><font color="#0000BB">$i</font><font color="#007700">][</font><font color="#DD0000">"mail"</font><font color="#007700">][</font><font color="#0000BB">0</font><font color="#007700">] .</font><font color="#DD0000">"<p>"</font><font color="#007700">;<br> }<br> echo </font><font color="#DD0000">"关闭链接"</font><font color="#007700">;<br> </font><font color="#0000BB">ldap_close</font><font color="#007700">(</font><font color="#0000BB">$ds</font><font color="#007700">);<br>} else {<br> echo </font><font color="#DD0000">"<h4>无法连接到 LDAP 服务器</h4>"</font><font color="#007700">;<br>}<br></font><font color="#0000BB">?><br></font>
</font>
<p>
欲使用 LDAP 服务器功能要先在 Web 服务器安装 LDAP 客户端程序,较着名的有美国密西根大学的 ldap-3.3 套件或者是 Netscape 的 Directory SDK。可到下列网址找回来安装<p>
<ul type=disc>
<li>Netscape <a href="http://developer.netscape.com/tech/directory/" tppabs="http://developer.netscape.com/tech/directory/">http://developer.netscape.com/tech/directory/</a>
<li>密西根大学 <a href="http://www.umich.edu/%7Edirsvcs/ldap/index.html" tppabs="http://www.umich.edu/~dirsvcs/ldap/index.html">http://www.umich.edu/~dirsvcs/ldap/index.html</a>
<li>OpenLDAP 计划 <a href="http://www.openldap.com/" tppabs="http://www.openldap.com/">http://www.openldap.com</a>
<li>LDAP World <a href="http://elvira.innosoft.com/ldapworld" tppabs="http://elvira.innosoft.com/ldapworld">http://elvira.innosoft.com/ldapworld</a>
</ul>
</td></tr></table><p>
<table border=0 width=100%><tr><td align=right valign=top><a href="function.php-ldap_add.htm" alt="function.php?ldap_add">ldap_add</a>:</td><td valign=top>增加 LDAP 名录的条目。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_mod_add.htm" alt="function.php?ldap_mod_add">ldap_mod_add</a>:</td><td valign=top>增加 LDAP 名录的属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_mod_del.htm" alt="function.php?ldap_mod_del">ldap_mod_del</a>:</td><td valign=top>删除 LDAP 名录的属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_mod_replace.htm" alt="function.php?ldap_mod_replace">ldap_mod_replace</a>:</td><td valign=top>新的 LDAP 名录取代旧属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_bind.htm" alt="function.php?ldap_bind">ldap_bind</a>:</td><td valign=top>系住 LDAP 目录。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_close.htm" alt="function.php?ldap_close">ldap_close</a>:</td><td valign=top>结束 LDAP 链接。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_connect.htm" alt="function.php?ldap_connect">ldap_connect</a>:</td><td valign=top>连上 LDAP 服务器。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_count_entries.htm" alt="function.php?ldap_count_entries">ldap_count_entries</a>:</td><td valign=top>搜寻结果的数目。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_delete.htm" alt="function.php?ldap_delete">ldap_delete</a>:</td><td valign=top>删除指定资源。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_dn2ufn.htm" alt="function.php?ldap_dn2ufn">ldap_dn2ufn</a>:</td><td valign=top>将 dn 转成易读的名字。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_explode_dn.htm" alt="function.php?ldap_explode_dn">ldap_explode_dn</a>:</td><td valign=top>切开 dn 的字段。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_first_attribute.htm" alt="function.php?ldap_first_attribute">ldap_first_attribute</a>:</td><td valign=top>取得第一笔资源的属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_first_entry.htm" alt="function.php?ldap_first_entry">ldap_first_entry</a>:</td><td valign=top>取得第一笔结果代号。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_free_result.htm" alt="function.php?ldap_free_result">ldap_free_result</a>:</td><td valign=top>释放返回资料内存。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_get_attributes.htm" alt="function.php?ldap_get_attributes">ldap_get_attributes</a>:</td><td valign=top>取得返回资料的属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_get_dn.htm" alt="function.php?ldap_get_dn">ldap_get_dn</a>:</td><td valign=top>取得 DN 值。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_get_entries.htm" alt="function.php?ldap_get_entries">ldap_get_entries</a>:</td><td valign=top>取得全部返回资料。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_get_values.htm" alt="function.php?ldap_get_values">ldap_get_values</a>:</td><td valign=top>取得全部返回值。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_list.htm" alt="function.php?ldap_list">ldap_list</a>:</td><td valign=top>列出简表。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_modify.htm" alt="function.php?ldap_modify">ldap_modify</a>:</td><td valign=top>改变 LDAP 名录的属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_next_attribute.htm" alt="function.php?ldap_next_attribute">ldap_next_attribute</a>:</td><td valign=top>取得返回资料的下笔属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_next_entry.htm" alt="function.php?ldap_next_entry">ldap_next_entry</a>:</td><td valign=top>取得下一笔结果代号。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_read.htm" alt="function.php?ldap_read">ldap_read</a>:</td><td valign=top>取得目前的资料属性。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_search.htm" alt="function.php?ldap_search">ldap_search</a>:</td><td valign=top>列出树状简表。</td></tr>
<tr><td align=right valign=top><a href="function.php-ldap_unbind.htm" alt="function.php?ldap_unbind">ldap_unbind</a>:</td><td valign=top>结束 LDAP 链接。</td></tr>
</table><p><hr size=1><br>如果你对此手册有任何问题,请到下面网址提问: <a href="www.web745.com">WEB开发知识库</a> (<a href="http://www.web745.com">www.web745.com</a>)<p>
</td></tr></table></div>
<p>
<div align=center>
<table border=0>
<tr>
<td>[ <a href="group.php-24.htm" alt="group.php?24">上一页</a>
</td>
<td> <a href="group.php-26.htm" alt="group.php?26">下一页</a>
]</td>
</tr>
</table>
</div><p><br><br>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -