質問

私はPHPでLDAPを実装していますが、これはかなり簡単に進んでいます。ただし、使用に関する質問があります die() または関数の返品を確認します。以下のコードから(ここから取った)、チェックするポイントは何ですか $ldapconn 使用する場合 die() とともに ldap_connect? PHPは終了するはずではありません die() 何かがうまくいかない場合 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...";
    }

}
役に立ちましたか?

解決

目的はありません。 LDAP_Connectが失敗した場合にfalseを返すため、2のいずれかを削除できます。

ダイを削除して、良いエラー処理を追加することをお勧めします。

ソース: php ldap_connect

php5.3でldap_connectをテストすることに注意する必要があります。LDAP_Connectが常にTRUEを返すサーバー(既存のかどうか)に正常に接続できます。リンクタイプは常にldap_connectionですが、実際には機能 /成功しない場合があります。接続が@ldap_bindで有効であることを確認し、エラーを確認することをお勧めします。

他のヒント

あなたは正しいです、それはかなり冗長です。

余談ですが、これまでだけです die モックアッププロトタイプまたは本当にシンプルなCLIスクリプトで。 「リアル」Webサイトの場合、エラーをより優雅に処理し、単なる代わりに適切なエラーページを出力する必要があります dieing。

ldap_connect()接続が失敗した場合にfalseを返します。この場合、スクリプトはdie()によって停止され、メッセージが返されます。この行の下に他のコードは実行されません。

ldap_connectエラー時にfalseを返します。ダイは、開発者が見るために読みやすいエラー/警告を設定できるため、あそこでダイがうまくいっています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top