PHP:死亡或检查结果



我正在用PHP实现LDAP,我必须说这很容易。然而,我有一个关于使用die()或检查函数返回的问题。从下面的代码(从这里取的),如果您使用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,因此您可以删除其中一个。

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

来源:PHP ldap_connect

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

你说得对,这太多余了。

顺便说一句,您应该只在模型原型或非常简单的CLI脚本中使用die。对于"真正的"网站,您应该更优雅地处理错误并输出适当的错误页面,而不是仅仅die

ldap_connect()如果连接失败返回false。在本例中,脚本被die()停止并返回一条消息。

ldap_connect在错误时返回false。die在这里很有用,因为有了它,你可以设置一个可读的错误/警告,让开发人员看到。

相关内容

  • 没有找到相关文章

最新更新