- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我怀疑我遗漏了一些非常基本和明显的东西,所以提前道歉!
我一直在使用 simple_xml_load
处理 XML 文件,但我客户的托管服务提供商阻止通过此方法加载外部文件。我现在正尝试使用 WordPress 内置的 wp_remote_get
函数重建我的工作。
这是我的代码(注意:此示例中的 key 和避难所 ID 是通用的):
$url = "http://api.petfinder.com/shelter.getPets?key=1234&count=20&id=abcd&status=A&output=full";
$pf_xml = wp_remote_get( $url );
$xml = wp_remote_retrieve_body($pf_xml);
使用它,我可以检索我需要的所有数据的数组,但我不知道如何定位特定数据。以下是 print_r($xml)
的输出:
<petfinder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://api.petfinder.com/schemas/0.9/petfinder.xsd">
<header>
<version>0.1</version>
<timestamp>2013-03-09T15:03:46Z</timestamp>
<status>
<code>100</code>
<message/>
</status>
</header>
<lastOffset>5</lastOffset>
<pets>
<pet>
<id>13019537</id>
<name>Jordy</name>
<animal>Dog</animal>
</pet>
<pet>
<id>13019888</id>
<name>Tom</name>
<animal>Dog</animal>
</pet>
</pets>
</petfinder>
例如,如果我想echo
状态码,我该怎么做?使用 simplexml,我会编写 $xml->header->status->code
。我似乎无法弄清楚使用 wp_remote_get
对数组执行类似操作的代码结构是什么。
提前致谢!
最佳答案
到目前为止,您的代码确实将 XML 检索为字符串:
$url = "http://api.petfinder.com/shelter.getPets?key=1234&count=20&id=abcd&status=A&output=full";
$response = wp_remote_get($url);
$body = wp_remote_retrieve_body($response);
像以前使用 simplexml_load_file
一样将字符串(而不是 URL)加载到 SimpleXMLElement
中(你没有显示具体代码,所以我假设你是根据你的描述这样做的)你现在需要用 simplexml_load_string
加载字符串相反:
$xml = simplexml_load_string($body);
$code = $xml->header->status->code;
我稍微更改了您的变量名称(尤其是 wp_remote_*
函数),以便更清楚地了解这些变量的含义。
关于php - 使用 wp_remote_get 在 WordPress 中处理 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15312554/
我第一次尝试使用 wp_remote_get 时遇到了一些麻烦。 到目前为止,我正在使用这段代码测试响应: 'Basic ' . base64_encode( "$username:$passwor
我正在使用 wp_remote_get 从 url 中获取图像并将其作为特色图像附加到帖子中。我最初能够使用来自 this 的一些帮助来做到这一点帖子和图像已成功设置为特色图片并显示在后端,但现在图像
我正在尝试将 API 与需要分页的 wp_remote_get 结合使用。 目前,我的 WordPress 插件通过以下方式调用 API $response = wp_remote_get( "htt
有没有一种方法(或解决方法)可以使用 wp_remote_get() (或任何其他核心函数)通过 Wordpress 获取页面;和启用JavaScript?我知道有像 phanthomJS 这样的
我怀疑我遗漏了一些非常基本和明显的东西,所以提前道歉! 我一直在使用 simple_xml_load 处理 XML 文件,但我客户的托管服务提供商阻止通过此方法加载外部文件。我现在正尝试使用 Word
我的 Wordpress 插件中的 wp_remote_get 有问题。 我想要做的是在我的主要公共(public)类中使用 ajax 调用一个方法。但问题是,当在其中使用 wp_remote_get
我知道 *wp_remote_get* 是一个 WordPress 函数,我应该将它发布在 wordpress.stackexchange 中,但是,我几乎可以肯定我的问题更多地出在一般的 PHP 方
我有一个在 MAMP Pro (macos) 上本地运行的站点,当我使用 wp_remote_get() 时不断收到 cURL 错误 我已经搜索并尝试了多种解决方案,但似乎没有任何效果。 我的代码:
我是一名优秀的程序员,十分优秀!