ldap_set_option
(PHP 4 >= 4.0.4, PHP 5, PHP 7)
ldap_set_option — 指定したオプションの値を設定する
説明
指定したオプションの値を newval に設定します。
パラメータ
-
link_identifier -
ldap_connect() が返す LDAP リンク ID。
-
option -
パラメータ
optionは以下のいずれかとなります。オプション 型 ~以降で使用可能 LDAP_OPT_DEREFinteger LDAP_OPT_SIZELIMITinteger LDAP_OPT_TIMELIMITinteger LDAP_OPT_NETWORK_TIMEOUTinteger PHP 5.3.0 LDAP_OPT_PROTOCOL_VERSIONinteger LDAP_OPT_ERROR_NUMBERinteger LDAP_OPT_REFERRALSbool LDAP_OPT_RESTARTbool LDAP_OPT_HOST_NAMEstring LDAP_OPT_ERROR_STRINGstring LDAP_OPT_DIAGNOSTIC_MESSAGEstring LDAP_OPT_MATCHED_DNstring LDAP_OPT_SERVER_CONTROLSarray LDAP_OPT_CLIENT_CONTROLSarray LDAP_OPT_X_KEEPALIVE_IDLEint LDAP_OPT_X_KEEPALIVE_PROBESint LDAP_OPT_X_KEEPALIVE_INTERVALint LDAP_OPT_X_TLS_CACERTDIRstring LDAP_OPT_X_TLS_CACERTFILEstring LDAP_OPT_X_TLS_CERTFILEstring LDAP_OPT_X_TLS_CIPHER_SUITEstring LDAP_OPT_X_TLS_CRLCHECKinteger LDAP_OPT_X_TLS_CRLFILEstring LDAP_OPT_X_TLS_DHFILEstring LDAP_OPT_X_TLS_KEYILEstring LDAP_OPT_X_TLS_PROTOCOL_MINinteger LDAP_OPT_X_TLS_RANDOM_FILEstring LDAP_OPT_X_TLS_REQUIRE_CERTinteger PHP 7.1.0 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 を参照ください。また以下の二番目の例も参照ください。 -
newval -
指定したオプション
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 を使用している場合のみ利用可能です。