ldap_set_option
(PHP 4 >= 4.0.4, PHP 5, PHP 7)
ldap_set_option — 指定したオプションの値を設定する
説明
ldap_set_option
( resource|null $ldap
, int $option
, array|string|int|bool $value
) : bool
指定したオプションの値を value
に設定します。
パラメータ
ldap
ldap_connect() が返す LDAP リンク ID。
option
パラメータ
option
は以下のいずれかとなります。オプション 型 ~以降で使用可能 LDAP_OPT_DEREF
int LDAP_OPT_SIZELIMIT
int LDAP_OPT_TIMELIMIT
int LDAP_OPT_NETWORK_TIMEOUT
int LDAP_OPT_PROTOCOL_VERSION
int LDAP_OPT_ERROR_NUMBER
int LDAP_OPT_REFERRALS
bool LDAP_OPT_RESTART
bool LDAP_OPT_HOST_NAME
string LDAP_OPT_ERROR_STRING
string LDAP_OPT_DIAGNOSTIC_MESSAGE
string LDAP_OPT_MATCHED_DN
string LDAP_OPT_SERVER_CONTROLS
array LDAP_OPT_CLIENT_CONTROLS
array LDAP_OPT_X_KEEPALIVE_IDLE
int PHP 7.1.0 LDAP_OPT_X_KEEPALIVE_PROBES
int PHP 7.1.0 LDAP_OPT_X_KEEPALIVE_INTERVAL
int PHP 7.1.0 LDAP_OPT_X_TLS_CACERTDIR
string PHP 7.1.0 LDAP_OPT_X_TLS_CACERTFILE
string PHP 7.1.0 LDAP_OPT_X_TLS_CERTFILE
string PHP 7.1.0 LDAP_OPT_X_TLS_CIPHER_SUITE
string PHP 7.1.0 LDAP_OPT_X_TLS_CRLCHECK
int PHP 7.1.0 LDAP_OPT_X_TLS_CRLFILE
string PHP 7.1.0 LDAP_OPT_X_TLS_DHFILE
string PHP 7.1.0 LDAP_OPT_X_TLS_KEYFILE
string PHP 7.1.0 LDAP_OPT_X_TLS_PROTOCOL_MIN
int PHP 7.1.0 LDAP_OPT_X_TLS_RANDOM_FILE
string PHP 7.1.0 LDAP_OPT_X_TLS_REQUIRE_CERT
int PHP 7.0.5 LDAP_OPT_SERVER_CONTROLS
およびLDAP_OPT_CLIENT_CONTROLS
はコントロールのリストを必要とします。 これは、値がコントロールの配列である必要があることです。 コントロールは、そのコントロールの ID である oid、オプションの value、オプションのフラグ criticality からなります。PHP において、 コントロールはキーが oid で値が文字列、 二つのオプションの要素からなる配列で指定されます。オプションの要素は、 キーが value で値が文字列、そしてキーが iscritical で値が論理値となります。 iscritical を省略した場合のデフォルトはfalse
です。詳細は » draft-ietf-ldapext-ldap-c-api-xx.txt を参照ください。また以下の二番目の例も参照ください。value
指定したオプション
option
の新しい値。
返り値
成功した場合に true
を、失敗した場合に false
を返します。
例
例1 プロトコルバージョンの設定
<?php// $ds はディレクトリサーバーへの有効なリンクIDですif (ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) { echo "LDAPv3 を使用します";} else { echo "プロトコルバージョンを 3 に設定できませんでした";}?>
例2 サーバーコントロールの設定
<?php// $ds は値を持たないディレクトリサーバーコントロールへの有効なリンクID// です。$ctrl1 = array("oid" => "1.2.752.58.10.1", "iscritical" => true);// iscritical のデフォルトは、FALSE です。$ctrl2 = array("oid" => "1.2.752.58.1.10", "value" => "magic");// 両方のコントロールを試しますif (!ldap_set_option($ds, LDAP_OPT_SERVER_CONTROLS, array($ctrl1, $ctrl2))) { echo "サーバーコントロールの設定に失敗しました。";}?>
注意
注意:
この関数は、OpenLDAP 2.x.x または Netscape Directory SDK x.x を使用している場合のみ利用可能です。