> php教程 > php手册 > 본문

解析PHP中的XML数据

WBOY
풀어 주다: 2016-06-13 11:12:51
원래의
1158명이 탐색했습니다.

如果你计划在PHP中处理XML数据,就需要一个XML库为你提取数据。例如解析RSS feed或是模式匹配(寻找XHTML图像或是元素)。

SimpleXML扩展提供了一个非常直观的API,更容易将XML转换成对象和遍历元素。唯一的缺点就是在内存中加载整个文档或是非常大的XML文件,它的性能可能是一个问题。

如果性能是一个考虑因素,你可以去使用XMLReader。XMLReader是一个XML解析器,它通过在加载过程中遍历每个节点,在而不是在内存中加载整个文档。

下面的代码使用简单的XML可以从我的网站获取最新的RSS。在我的服务器上,我已经使用Curl库处理HTTP连接,因为它支持服务器托管并且更安全。
 

<ol class="dp-xml">
<li class="alt"><span><span class="tag"></span><span class="tag-name">php</span><span> </span></span></li>
<li><span>   </span></li>
<li class="alt"><span>function load_file($url) {  </span></li>
<li>
<span>$</span><span class="attribute">ch</span><span> = </span><span class="attribute-value">curl_init</span><span>($url);  </span>
</li>
<li class="alt"><span>#Return http response in string  </span></li>
<li><span>curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  </span></li>
<li class="alt">
<span>$</span><span class="attribute">xml</span><span> = </span><span class="attribute-value">simplexml_load_string</span><span>(curl_exec($ch));  </span>
</li>
<li><span>return $xml;  </span></li>
<li class="alt"><span>}  </span></li>
<li><span>   </span></li>
<li class="alt">
<span>$</span><span class="attribute">feedurl</span><span> = </span><span class="attribute-value">'http://naveenbalani.com/index.php/feed/'</span><span>;  </span>
</li>
<li>
<span>$</span><span class="attribute">rss</span><span> = </span><span class="attribute-value">load_file</span><span>($feedurl);  </span>
</li>
<li class="alt"><span>   </span></li>
<li>
<span>foreach ($rss-</span><span class="tag">></span><span>channel-</span><span class="tag">></span><span>item as $item) {  </span>
</li>
<li class="alt">
<span>echo "</span><span class="tag"><span class="tag-name">h2</span><span class="tag">></span><span>" . $item-</span><span class="tag">></span><span>title . "</span><span class="tag"></span><span class="tag-name">h2</span><span class="tag">></span><span>";  </span></span>
</li>
<li>
<span>echo "</span><span class="tag"><span class="tag-name">p</span><span class="tag">></span><span>" . $item-</span><span class="tag">></span><span>description . "</span><span class="tag"></span><span class="tag-name">p</span><span class="tag">></span><span>";  </span></span>
</li>
<li class="alt"><span>}  </span></li>
<li><span>   </span></li>
<li class="alt">
<span class="tag">?></span><span> </span>
</li>
</ol>
로그인 후 복사

http://css.dzone.com/news/parsing-xml-data-php


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿