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

# ldap_add

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

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

### 説明

function 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 クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な `ldap link` resource を期待していました。
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 ディレクトリにエントリを付加する
- ldap_delete() - ディレクトリからエントリを削除する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open