Php 排序HTTP API的结果

Php 排序HTTP API的结果,php,xml,matomo,Php,Xml,Matomo,试图找到一种方法来重新排序HTTP API的结果。这里有一个例子 https://demo.piwik.org/?module=API&method=VisitsSummary.get&idSite=7&period=month&date=last3&format=xml&token_auth=anonymous 返回 <results> <result date="2017-10"/> <result

试图找到一种方法来重新排序HTTP API的结果。这里有一个例子

https://demo.piwik.org/?module=API&method=VisitsSummary.get&idSite=7&period=month&date=last3&format=xml&token_auth=anonymous
返回

<results>
   <result date="2017-10"/>
   <result date="2017-11"/>
   <result date="2017-12"/>
</results>

然而,我想把它作为

<results>
   <result date="2017-12"/>
   <result date="2017-11"/>
   <result date="2017-10"/>
</results>


我曾尝试在URL中使用
过滤器\u排序\u顺序
,但没有成功。有没有一种方法可以在URL中实现这一点,或者在
PHP
中有一种解决方案可以实现这篇文章的
XML

继续评论:

很抱歉,但是如果API没有提供选项,那么您必须访问它发送的内容

如果您希望对结果进行排序,那么您可以使用JavaScript在客户端对其进行排序,或者从您自己的服务器端PHP获取数据,对其进行排序,并将其作为API提供给客户端


如果你想要几种不同类型的排序,那么我建议采用后者

尽管你已经接受了我的答案,但既然你已经发表了,我认为这是正确的答案:

可选API参数

每个API调用都可以包含未出现在API调用列表中的参数 参数,但充当“过滤器”。过滤器可以。。。充当数据 助手(排序结果…)”

这两者的结合似乎就是你的答案

filter_column;定义要搜索文本的列 (请参阅筛选模式)。如果未指定,则默认为“标签”
.
过滤器\排序\顺序;定义结果的顺序,asc或desc


如果您无法理解,请尝试通过与他们联系,或询问其他用户,网址为

,其中一位Piwik开发者回答了以下问题:

您好,预计报告是按日期列出的。此处报告没有维度(只有主要指标)。具有维度的报告会被排序,但会在一个日期内对每个数据表进行排序

因此,基本上排序应用于每一天的数据,因为VisitsSummary.get没有多行,所以没有排序

对没有维度的报告的日期应用排序过滤器将不是一个解决方案,因为我们需要对有维度和没有维度的报告进行一致的排序行为。这将是一个新功能,使此可排序,并需要一个新的API参数

()


在这成为一项功能之前,我建议您对数据客户端进行排序。

您正在编写服务器代码吗?即使没有,我也不确定为什么在客户端对JS中的结果进行排序如此困难API是否在任何地方发布过?不,我没有编写服务器代码。它是作为页面分析从自托管Piwik服务器传入的。我没有尝试过JS中的排序作为API直接拉入PHP作为
$url=“
”,结果输出为
打印($value”)
那么你能在任何地方找到API文档吗/联系任何人询问他们吗?在PHP中有可能做到这一点吗?根据Piwik的说法,我应该能够通过向API URL添加
&filter\u sort\u order=asc
进行排序。这里的文档似乎支持排序,但对我来说不起作用。我喜欢你的答案,我很确定这激发了我一个解决方案。总是有另一种看待事物的方式:-)但是,看看我的另一个答案。如果开发者不愿意帮忙,试着在论坛上询问oter用户。祝你好运谢谢你花时间阅读这些东西。我遵循了他们的文档,但对我来说不起作用。可能是电话之后的某些事情阻止了它。你的另一个答案最好是理解需要什么,让我走上学习其他选项的正确轨道。我现在已经把它整理好了,没有双关语的意思!再加上一个用来分类的。干杯谢谢你卢卡斯,我找到了一个解决方案,只需使用
krsort($content)