ホームページ  >  記事  >  バックエンド開発  >  XmlDocument がオブジェクトを更新するとき、xmlns=""_PHP チュートリアルを生成するソリューション

XmlDocument がオブジェクトを更新するとき、xmlns=""_PHP チュートリアルを生成するソリューション

WBOY
WBOYオリジナル
2016-07-20 11:02:56753ブラウズ

今日の開発中に XmlDocument という革新的なオブジェクトに遭遇したとき、xmlns="" が生成されました。参照が必要な場合は、この問題の解決に役立つ可能性があります。 ​


1. 読み込み時にはNameSpaceを追加する必要があります

2. NamespaceURI を指定せずにノードを作成すると、xmlns="" が生成されます。
コードは次のとおりです コードをコピー
var exclDef = excl.SelectSingleNode(@"ns:worksheet/ns:sheetData", excl.GetNameSpaceManager("ns"));
public static XmlNamespaceManager GetNameSpaceManager(この XmlDocument xml、文字列 NameSpace)
{ XmlNamespaceManager nsmgr = 新しい XmlNamespaceManager(xml.NameTable); }

を参照してください。

/post_read.asp?ブログID=2524806&PostID=21711977

ABC の 3 レベルの NameSpaceURI が XYY の場合、ABC の生成された NameSpaceURI は AB 空であり、C とその親は同じ NameSpaceURI を持つため、C は NameSpaceURI を生成しません。


したがって、ノードを作成するときは、NameSpaceURI が表示されないように、ノードの親と同じ NameSpaceURI を保持してください。

var si = e.OwnerDocument.CreateElement("si", e.NamespaceURI); e.AppendChild(si);

さらに、属性を革新するときは、NameSpaceURI を指定しないでください。つまり、生成される Xml には特定の NameSpaceURI がありません。

var r = excl.CreateAttribute("r");



http://www.bkjia.com/PHPjc/445332.html

www.bkjia.com

http://www.bkjia.com/PHPjc/445332.html技術記事今日の開発中に XmlDocument という革新的なオブジェクトに遭遇したとき、xmlns= が生成されました。参照が必要な場合は、この問題を解決するのに役立つかもしれません。 1...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。