omise PHP 获取所有费用

omise PHP get all charges

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' 

我做错了什么。

我不知道这个图书馆,但在快速搜索后得到了一些提示: 首先(如果你还没有这样做)阅读 this doc about pagination.

  1. 我发现日期有不同的格式:iso8601 对前者意味着什么 2014-10-20T00:00:00Z
  2. 限制为20条记录你可以改为100条,尝试使用分页

顺便说一句。有趣 API.

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

对我有用。

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

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

$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));