子を置き換える

# DOMNode::replaceChild

(PHP 5, PHP 7)

DOMNode::replaceChild — 子を置き換える

### 説明

public DOMNode::replaceChild ( DOMNode `$newnode` , DOMNode `$oldnode` ) : DOMNode

この関数は、子要素 `oldnode` を新しいノードに 置き換えます。もし `newnode` がすでに子要素であった場合は、 それがふたたび追加されることはありません。置き換えに成功すると、 置き換え前のノードが返されます。

### パラメータ

`newnode`

  新しいノード。対象ドキュメントのメンバ、 すなわち、DOMDocument->createXXX() メソッドのひとつで作成されたものか DOMDocument::importNode で ドキュメントにインポートされたものである必要があります。

`oldnode`

  古いノード。

### 返り値

古いノード、あるいはエラーが発生した場合は `FALSE` を返します。

### エラー / 例外

`DOM_NO_MODIFICATION_ALLOWED_ERR`

  このノードが読み込み専用であったり、挿入されるノードの以前の親が 読み込み専用であった場合に発生します。

`DOM_HIERARCHY_REQUEST_ERR`

  `newnode` で指定した型の子ノードを 保持することが許可されていない場合、あるいは追加しようとしている ノードが自分自身やその祖先であった場合に発生します。

`DOM_WRONG_DOCUMENT_ERR`

  `newnode` が、このノードとは別の ドキュメントで作成されたものである場合に発生します。

`DOM_NOT_FOUND`

  `oldnode` がこのノードの子でない場合に発生します。

### 参考

- DOMNode::appendChild() - 子要素群の最後に新しい子要素を追加する
- DOMNode::removeChild() - 子要素群から子要素を削除する