PHP:死或检查结果?

时间:2011-05-03 13:07:59

标签: php ldap exit die

我正在用PHP实现LDAP,我必须说这很容易。但是我有一个关于使用die()或检查函数返回的问题。从下面的代码(taken from here)中,如果您将$ldapconndie()一起使用,那么检查ldap_connect的重点是什么?如果die()出现问题,那么PHP是否应该与ldap_connect一起退出?

// 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...";
    }

}

4 个答案:

答案 0 :(得分:3)

它没有任何用途。 ldap_connect如果失败则返回false,因此你可以删除其中一个。

我建议删除模具并添加一些好的错误处理。

来源:PHP ldap_connect

你应该小心在PHP5.3中测试ldap_connect我可以成功连接到ldap_connect总是返回true的任何服务器(现有或不存在)。链接类型始终是ldap_connection,但实际上可能无法正常工作/成功。我建议验证连接是否对@ldap_bind有效,然后检查错误。

答案 1 :(得分:2)

你是对的,这非常多余。

顺便说一句,你应该只使用die模型原型或真正简单的CLI脚本。对于“真实”网站,您应该更优雅地处理错误并输出正确的错误页面,而不仅仅是die

答案 2 :(得分:0)

如果连接失败,

ldap_connect()将返回false。在这种情况下,脚本由die()停止并返回一条消息。此行下面不会执行任何其他代码。

答案 3 :(得分:0)

ldap_connect在出错时返回false。模具在那里很有用,因为有了它,你就可以为开发人员设置一个可读的错误/警告。