今日お話しする内容は、
Xml が、昨年人気のあった Ajax から、データの保存と送信の現在の原動力となっている、Xml オブジェクトを返すメソッド (ResponseXML) についてです。次に、JavaScript がこの XML オブジェクトを処理します。
明らかに、強力なサーバーサイド プログラミング言語 PHP には、このテクノロジのサポートが必要です。より一般的なのは、Xml Parse、XmlReader、Xml Rpc です。ここで説明したいのは、これらではなく、simplexml です。 PHPに統合されています。その使用方法は比較的簡単で、他のファイルや関連する設定をロードする必要はありません。もちろん、これは私が最もよく使用するクラスであり、他の PHP XML 解析クラスよりもよく知っています。
そのようなファイルがあるとします。
PHP XML 処理 XML コードは次のとおりです
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><</span><span> ?xml </span><span class="attribute">version</span><span>=</span><span class="attribute-value">"1.0"</span><span> </span><span class="attribute">encoding</span><span>=</span><span class="attribute-value">"utf-8"</span><span class="tag">?></span><span> </span></span></li> <li> <span class="tag"><</span><span> </span><span class="tag-name">phplamp</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> </span><span class="tag-name">post</span><span class="tag">></span><span> </span> </li> <li> <span class="tag"><</span><span> </span><span class="tag-name">title</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"1"</span><span class="tag">></span><span>PHP XML处理介绍一</span><span class="tag"><</span><span> /title</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> </span><span class="tag-name">details</span><span class="tag">></span><span>详细内容一</span><span class="tag"><</span><span> /details</span><span class="tag">></span><span> </span> </li> <li> <span class="tag"><</span><span> /post</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> </span><span class="tag-name">post</span><span class="tag">></span><span> </span> </li> <li> <span class="tag"><</span><span> </span><span class="tag-name">title</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"2"</span><span class="tag">></span><span>PHP XML处理介绍二</span><span class="tag"><</span><span> /title</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> </span><span class="tag-name">details</span><span class="tag">></span><span>详细内容二</span><span class="tag"></</span><span class="tag-name">details</span><span class="tag">></span><span> </span> </li> <li> <span class="tag"><</span><span> /post</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> </span><span class="tag-name">post</span><span class="tag">></span><span> </span> </li> <li> <span class="tag"><</span><span> </span><span class="tag-name">title</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">"3"</span><span class="tag">></span><span>PHP XML处理介绍三</span><span class="tag"><</span><span> /title</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> </span><span class="tag-name">details</span><span class="tag">></span><span>详细内容三</span><span class="tag"><</span><span> /details</span><span class="tag">></span><span> </span> </li> <li> <span class="tag"><</span><span> /post</span><span class="tag">></span><span> </span> </li> <li class="alt"> <span class="tag"><</span><span> /phplamp</span><span class="tag">></span><span> </span> </li> </ol>
次に、PHP simplexml メソッドを使用して、そのすべてのデータを解析する必要があります。
PHP XML処理のPHPコードは以下の通りです
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><</span><span> ?php </span></span></li><li><span>/** </span></li><li class="alt"><span>* 加载Xml文件 </span></li><li><span>*/ </span></li><li class="alt"><span>$</span><span class="attribute">xml</span><span> = </span><span class="attribute-value">simplexml_load_file</span><span>("me.xml"); </span></li><li><span>/** </span></li><li class="alt"><span>* 如果Xml为字符串的话可以用下面这个<br />方法,后面的使用方法一样 </span></li><li><span>* $</span><span class="attribute">xml</span><span> = </span><span class="attribute-value">simplexml_load_string</span><span> </span></li><li class="alt"><span>*/ </span></li><li><span>/** </span></li><li class="alt"><span>* 遍历$xml对象 </span></li><li><span>*/ </span></li><li class="alt"><span>foreach ($xml as $</span><span class="attribute">key</span><span> =</span><span class="tag">></span><span> $value) { </span></span></li> <li><span>// 获取属性 </span></li> <li class="alt"> <span>$</span><span class="attribute">attr</span><span> = $value-</span><span class="tag">></span><span>title-</span><span class="tag">></span><span>attributes(); </span> </li> <li> <span>echo "Id: " . $attr['id'] . "</span><span class="tag"><</span><span> </span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span>"; </span> </li> <li class="alt"> <span>echo "Title: " . $value-</span><span class="tag">></span><span>title . "</span><span class="tag"><</span><span> </span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span>"; </span> </li> <li> <span>echo "Details: " . $value-</span><span class="tag">></span><span>details <br>. "</span><span class="tag"><</span><span> </span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span class="tag"><</span><span> </span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span>"; </span> </li> <li class="alt"><span>} </span></li> <li> <span class="tag">?></span><span> </span> </li> </ol>
以上、PHP simplexmlの具体的な使い方の紹介でした。