オブジェクトモデルを使用しSimpleXMLおよびそうやすいない: 問題及び解決
SimpleXMLはその名の通り使用しやすい。 但しそれはないかもしれないしまたはそうではないかもしれない要素の価値を点検する必要があるとき苦痛である。
省略可能な要素が付いているXMLのスキーマのそれを使用して不足分で高貴な苦痛はある。 SimpleXMLがデータがある目的だけを作成するので、価値あなたの前に目的の存在があるようにアクセスを確認するために醜いコードを必ず書かなければならない。
便利方法を単に書くことによってそれを解決できない。 問題を理解するために割り当て、それから私達はそれを解決する。
利点
SimpleXMLは使用し非常にやすい。 目的階層にアクセスするので要素にアクセスする:
$xml->Items [0 >Request] - [0] - >Errors [0] - >Error [0] - >Status
問題
SimpleXMLはデータがあるXMLの要素のためのだけ目的を作成し、(正しくそう)。 これはそれを有効にさせる。 但しそれはまたそれをあなたのスキーマが省略可能な要素と適用範囲が広いいつか使用すること困難にする。 上の例を取るために割り当てる。 上で間違いがだけ間違いがあるある省略可能な要素ならように安全に状態にアクセスできない。 そしてこのような状態の存在を点検できない:
isset ($xml->Items [0 >Request] - [0] - >Errors [0] - >Error [0] - >Status)
間違いがないかもしれないので。 従って次に実際に状態を点検できる前に間違いがあれば調べるために最初に間違いの存在および状態の存在を点検しなければならない(多分)。 そしてこれは目的階層のあらゆる深さにあてはまる。 首の主要な苦痛になる方法をこの杖をすぐに見ることができる。 またいくつかを逃し、維持の口論を引き起こす可能性が非常に高い。 コードはunmaintainableなるも。
解決
私の解決はそのような状態のためにXPathを使用することである。 それはsuccintly分野の供給そして価値を(もし可能であれば)告げる。
結論
XPathと共のSimpleXMLはPHPのあなたのXMLデータを処理する非常に強力な方法である。
、いかに に、PHP ヘッドラインニュースの下で ファイルされるの 技術のノート、 技術、 網、 網サービス |
|
RSS 2.0 |
Trackback この記事 |
この記事に電子メールを送りなさい
また読むのを好むかもしれない |





































2005年11月16日11:42 pmの
[...]物オブジェクトモデルを使用しSimpleXMLおよびそうやすいない: 問題及び解決」SimpleXMLはPHP 5.xを使用しない: 問題及び解決2005年11月16日AngsumanChakraborty [...]著
2005年11月22日8:37 AMの
[...]は複数のオープンソース免許証、Google AdSenseからのリストのクリスマスの願いに違反するソニーDRM Rootkitを報告し、Google Analyticsで先端を提供し、そしてPHPの開発者のためのSimpleXMLを簡単にする。 [...]
2005年11月22日8:42 AMの
[...]は複数のオープンソース免許証、Google AdSenseからのリストのクリスマスの願いに違反するソニーDRM Rootkitを報告し、Google Analyticsで先端を提供し、そしてPHPの開発者のためのSimpleXMLを簡単にする。 [...]
2005年12月19日2:55 AMの
[...]は複数のオープンソース免許証、Google AdSenseからのリストのクリスマスの願いに違反するソニーDRM Rootkitを報告し、Google Analyticsで先端を提供し、そしてPHPの開発者のためのSimpleXMLを簡単にする。 [...]