我正在使用 PHP 实现 LDAP,我必须说,这相当容易。但是,我对使用 die() 或检查函数返回有疑问。从下面的代码 ( taken from here ) 中,如果将 die()
与 ldap_connect
一起使用,那么检查 $ldapconn
有何意义?如果 ldap_connect
出现问题,PHP 不是应该以 die()
退出吗?
// connect to ldap server
$ldapconn = ldap_connect("ldap.example.com")
or die("Could not connect to LDAP server.");
if ($ldapconn) {
// binding to ldap server
$ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
// verify binding
if ($ldapbind) {
echo "LDAP bind successful...";
} else {
echo "LDAP bind failed...";
}
}
最佳答案
它没有任何作用。 ldap_connect如果失败就会返回false从而死掉,所以你可以删除2个之一。
我建议删除模具并添加一些良好的错误处理。
在 PHP5.3 中测试 ldap_connect 时应该小心,我可以成功连接到 ldap_connect 始终返回 true 的任何服务器(现有的或不存在的)。链接类型始终为 ldap_connection,但实际上可能无法工作/成功。我建议使用 @ldap_bind 验证连接是否有效,然后检查是否有错误。
关于PHP:死掉还是检查结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5869911/