使用 PHP cURL 提取 XML 响应
在 PHP 中,cURL 可用于从服务器检索数据。但是,当响应采用 XML 格式时,输出可能存储在标量变量中,这使得解析变得困难。为了解决这个问题,将 XML 响应转换为对象、散列或数组以简化操作是有益的。
考虑以下代码:
<code class="php">function download_page($path){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$path); curl_setopt($ch, CURLOPT_FAILONERROR,1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_TIMEOUT, 15); $retValue = curl_exec($ch); curl_close($ch); return $retValue; } $sXML = download_page('http://alanstorm.com/atom'); $oXML = new SimpleXMLElement($sXML); foreach($oXML->entry as $oEntry){ echo $oEntry->title . "\n"; }</code>
在此代码中,download_page 函数使用 cURL 从指定的 URL 检索 XML 文档,并使用各种选项来确保正确处理错误、重定向和超时。结果存储在 $sXML 变量中。
为了将 XML 响应转换为对象,使用了 SimpleXMLElement 类。此类提供了以简单方式访问 XML 文档的各个元素和属性的方法。在此示例中,我们迭代文档中的条目并打印它们的标题。
通过将 XML 响应解析为对象,访问和操作它包含的数据变得相当容易,使开发人员能够提取特定的数据信息并有效地处理它。
以上是如何使用 SimpleXMLElement 在 PHP 中解析来自 cURL 的 XML 响应?的详细内容。更多信息请关注PHP中文网其他相关文章!