Опустить PHP получить все расходы
Omise PHP получает все расходы ref: 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 ответа
Решение
$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 не поддерживает передачу массива по первому параметру.
(Как ваше решение) вы должны передать его в виде строки (включая другие фильтры, такие как "предел", "смещение").
$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));
Я не знаю эту библиотеку, но после быстрого поиска несколько советов: прежде всего (если вы этого еще не сделали) прочитайте этот документ о нумерации страниц.
- Я обнаружил, что дата имеет другой формат: iso8601, что означает для экс
2014-10-20T00:00:00Z
, - ограничить до 20 записей, вы можете изменить до 100, попробуйте использовать нумерацию страниц
КСТАТИ. Интересный API.