A use exemple of this method :
Usefull for generating an XML linked with a XSLT !
<?php
// "Create" the document.
$xml = new DOMDocument( "1.0", "ISO-8859-15" );
//to have indented output, not just a line
$xml->preserveWhiteSpace = false;
$xml->formatOutput = true;
// ------------- Interresting part here ------------
//creating an xslt adding processing line
$xslt = $xml->createProcessingInstruction('xml-stylesheet', 'type="text/xsl" href="base.xsl"');
//adding it to the xml
$xml->appendChild($xslt);
// ----------- / Interresting part here -------------
//adding some elements
$root = $xml->createElement("list");
$node = $xml->createElement("contact", "John Doe");
$root-> appendChild($node);
$xml-> appendChild($root);
//creating the file
$xml-> save("output.xml");
?>
output.xml :
<?xml version="1.0" encoding="ISO-8859-15"?>
<?xml-stylesheet type="text/xsl" href="base.xsl"?> //the line has been created successfully
<list>
<contact>John Doe</contact>
</list>
DOMDocument::createProcessingInstruction
(PHP 5)
DOMDocument::createProcessingInstruction — 新しい PI ノードを作成する
説明
DOMProcessingInstruction DOMDocument::createProcessingInstruction
( string $target
[, string $data
] )
この関数は、DOMProcessingInstruction クラスの新しいインスタンスを作成します。このノードは、(たとえば) DOMNode->appendChild() などで 挿入されない限り、ドキュメント内に現われません。
パラメータ
- target
-
処理命令の対象。
- data
-
処理命令の内容。
返り値
新しい DOMProcessingInstruction、 あるいはエラーが発生した場合には FALSE を返します。
エラー / 例外
- DOM_INVALID_CHARACTER_ERR
-
target が無効な文字を含んでいる場合に発生します。
参考
- DOMNode::appendChild - 子要素群の最後に新しい子要素を追加する
- DOMDocument::createAttribute - 新しい属性を作成する
- DOMDocument::createAttributeNS - 関連付けられた名前空間に新しい属性を作成する
- DOMDocument::createCDATASection - 新しい cdata ノードを作成する
- DOMDocument::createComment - 新しい comment ノードを作成する
- DOMDocument::createDocumentFragment - 新しい文書片を作成する
- DOMDocument::createElement - 新しい要素ノードを作成する
- DOMDocument::createElementNS - 関連付けられた名前空間に新しい要素を作成する
- DOMDocument::createEntityReference - 新しいエンティティ参照ノードを作成する
- DOMDocument::createTextNode - 新しいテキストノードを作成する
DOMDocument::createProcessingInstruction
romain at supinfo dot com
04-Feb-2009 04:57
04-Feb-2009 04:57
