ldap_add

(PHP 4, PHP 5, PHP 7, PHP 8)

ldap_addLDAP ディレクトリにエントリを付加する

説明

ldap_add(
    LDAP\Connection $ldap,
    string $dn,
    array $entry,
    ?array $controls = null
): bool

エントリを LDAP ディレクトリに追加します。

パラメータ

ldap

ldap_connect() が返す LDAP\Connection クラスのインスタンス。

dn

LDAP エンティティの識別名。

entry

そのエントリに関する情報を表す配列。 エントリの値は、個々の属性によりインデックスが作成されています。 ある属性に関して複数の値がある場合は、0 から始まる整数で 添字が作成されます。

<?php
$entry
["attribute1"] = "value";
$entry["attribute2"][0] = "value1";
$entry["attribute2"][1] = "value2";
?>

controls

リクエストと一緒に送信する LDAP コントロール の配列

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.1.0 引数 ldap は、LDAP\Connection クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソース を期待していました。
8.0.0 controls は、nullable になりました。 これより前のバージョンでは、デフォルト値が [] でした。
7.3 controls のサポートが追加されました。

例1 認証型バインドの例

<?php
$ds 
ldap_connect("localhost");  // LDAP サーバーはこのホストであると仮定

if ($ds) {
    
// 更新アクセスを行うために適当な dn でバインドする
    
$r ldap_bind($ds"cn=root, o=My Company, c=US""secret");

    
// データを準備する
    
$info["cn"] = "John Jones";
    
$info["sn"] = "Jones";
    
$info["objectclass"] = "person";

    
// データをディレクトリに追加
    
$r ldap_add($ds"cn=John Jones, o=My Company, c=US"$info);

    
ldap_close($ds);
} else {
    echo 
"LDAP サーバーに接続できません"
}
?>

注意

注意: この関数はバイナリデータに対応しています。

参考

  • ldap_add_ext() - LDAP ディレクトリにエントリを付加する
  • ldap_delete() - ディレクトリからエントリを削除する

関連キーワード:  エントリ, ディレクトリ, 付加, controls, ext, バージョン, Connection, インスタンス, 期待, 作成