【PHP8.x】C14NFileメソッドの使い方

C14NFileメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

DOMAttr::C14NFileメソッドは、属性ノードをCanonical XML(C14N)形式でファイルにシリアライズするメソッドです。このメソッドは、属性ノードを特定の標準化されたXML形式でファイルに書き出す際に使用されます。C14Nは、XMLドキュメントを論理的に等価な形式に変換するための標準であり、異なるシステム間でのXMLドキュメントの比較や署名、暗号化などの処理において一貫性を保証するために重要です。

このメソッドを使用することで、属性ノードの情報をC14N形式でファイルに保存し、後で利用したり、他のシステムと共有したりすることが可能になります。ファイルパスを指定することで、出力先のファイルを制御できます。さらに、オプションとして、C14Nのバージョンや包含するコメントの有無などを指定することもできます。

C14NFileメソッドは、DOMAttrクラスのインスタンスに対して呼び出すことができます。引数には、出力先のファイルパスを文字列で指定します。その他にも、C14Nのバージョンやコメントの扱いなどを制御するためのオプション引数を指定できます。メソッドの実行が成功すると、シリアライズされたデータが指定されたファイルに書き込まれ、成功した場合はtrue、失敗した場合はfalseが返されます。このメソッドは、XMLデータを永続化したり、異なるシステム間で安全に共有したりする際に役立ちます。

構文(syntax)

1DOMAttr::C14NFile( string $uri, string $exclusive = "", array $with_comments = [], string $xpath = "" ): bool

引数(parameters)

string $uri, bool $exclusive = false, bool $with_comments = false, ?array $xpath = null, ?array $ns_prefixes = null

  • string $uri: 正規化する対象のDOMAttrのURIを指定する文字列
  • bool $exclusive = false: trueに設定すると、属性が排他的に正規化されるブール値
  • bool $with_comments = false: trueに設定すると、コメントも正規化対象に含めるブール値
  • ?array $xpath = null: 特定のXPath式に一致するノードのみを正規化対象とする配列
  • ?array $ns_prefixes = null: 正規化対象とする名前空間プレフィックスの配列

戻り値(return)

bool

このメソッドは、属性を正規化してファイルに書き込めたかどうかを真偽値(bool)で返します。

【PHP8.x】C14NFileメソッドの使い方 | いっしー@Webエンジニア