ldap_add

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

説明

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

エントリを 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 クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な ldap link リソース を期待していました。
8.0.0 controls は、nullable になりました。 これより前のバージョンでは、デフォルト値が [] でした。
7.3.0 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_delete