省略PHP获取所有费用

时间:2016-10-09 18:16:07

标签: php api omise

Omise PHP获得所有费用 参考:https://www.omise.co/charges-api

$charges = OmiseCharge::retrieve();

这段代码给了我20条记录,没问题。

$response = OmiseCharge::retrieve('',OMISE_PUBLIC_KEY,OMISE_SECRET_KEY);

这也给了我前20条记录。

但我的要求是使用日期参数获取所有费用

$param = array(

            'from' => '2014-10-20 00:00:00',
            'to' => '2014-09-25 00:00:00'
        );
    $response = OmiseCharge::retrieve($param);

这会产生错误。

Fatal error: Uncaught exception 'OmiseNotFoundException' with message 'charge Array was not found' 

我做错了什么。

3 个答案:

答案 0 :(得分:1)

目前Omise-PHP库不支持在第一个参数传递数组。

(作为您的解决方案)您必须将其作为字符串传递(包括其他过滤器,例如'限制','偏移')。

$param = array(
    'limit'  => 40,
    'offset' => 40,
    'from'   => '2011-10-20 00:00:00',
    'to'     => '2016-09-25 00:00:00'
);

$charges = OmiseCharge::retrieve('?'.http_build_query($param));

答案 1 :(得分:0)

我不知道这个库但是在快速搜索之后有一些提示: 首先(如果您还没有这样做)请阅读this doc about pagination.

  1. 我发现日期的格式不同:iso8601对于2014-10-20T00:00:00Z的含义是什么。
  2. 限制为20条记录,您可以更改为100,尝试使用分页
  3. 顺便说一句。有趣的API。

答案 2 :(得分:0)

$param = array(
            'from' => '2011-10-20 00:00:00',
            'to' => '2016-09-25 00:00:00'
        );
        $response = OmiseCharge::retrieve('?'.http_build_query($param));

为我工作。