Stripe:用PHP列出所有费用

Stripe:用PHP列出所有费用,php,stripe-payments,Php,Stripe Payments,我试图列出我的条带帐户的所有费用,以获得对账单描述符(我的产品)的列表,但我发现有一个错误,该错误表示找不到费用 <?php $off = 0; $has_more = True; $listeProducts = array(); ini_set('max_execution_time', 2000); while($has_more){ $req = \Stripe\Charge::all(array("limit" => 100, "starting_after" =&

我试图列出我的条带帐户的所有费用,以获得对账单描述符(我的产品)的列表,但我发现有一个错误,该错误表示找不到费用

<?php
$off = 0;
$has_more = True;
$listeProducts = array();
ini_set('max_execution_time', 2000);
while($has_more){
    $req = \Stripe\Charge::all(array("limit" => 100, "starting_after" => $off));
    $res = json_decode($req->__toJSON(), true);

    foreach($res["data"] as &$prodUni){
        array_push($listeProducts, $prodUni["statement_descriptor"]);
    }

    $has_more = $res["has_more"];
    $off += 100;
}
$_SESSION["products"] = $listeProducts;
我不能把“抵销”放在前面,因为它已经弃用了,而且它和前面的结尾做了同样的事情


问题是我输入了0,但需要费用ID。。。。我不想把你的身份证放在那里。。。如果在获取一个对象(理想情况下是上一次获取结果中的最后一个对象)之后启动_,我需要执行类似于偏移量

的操作


请参见

问题答案的第一部分是在你检查是否有更多之前先获得前100名

但是在那之后,我无法检索第一个电荷,不要忘记,当我们使用条带API检索时,列表的顺序是相反的!!!所以我必须得到最后一个还是第一个??如何更正我的代码pease? 这句话对吗$lastId=$res[“数据”][“99”][“id”]


条带API提供了一个功能

此功能可以轻松地获取大量资源列表,而无需手动对结果分页并执行后续请求

根据文档改编,这将很好地实现这一点(并且更易于阅读):

\Stripe\Stripe::setApiKey(“sk_……);
/**
*自动检查所有费用,以数据块/页的形式获取数据
*100个结果。
*/
$charges=\Stripe\Charge::all([“limit”=>100]);
foreach($charges->autoPagingIterator()作为$charge){
//用美元做某事
}

BTW:不要使用短标签(
谢谢,是的,我用的是正确的吗?更好。我还编辑了你的问题,不使用短句型。谢谢,我已经编辑并用粗体表示我需要使用偏移量,但如果有其他方法,它很酷…那么如何做呢?偏移量=0的等价物是什么?因为我会使用偏移量=100,偏移量=200等等($has\u more)偏移量不再使用。您将获取第一个对象列表,记下最后一个对象,然后再次运行查询。因此,在while循环中,只需获取每组结果中的最后一个对象(100)然后将其作为
之后开始,它本质上是一个偏移量-您要求的是在该偏移量之后的项目。非常感谢,如何开始?我可以在第一个“之后开始”中添加什么?我不想错过第一次充电。您需要传递的对象是每个while循环中的最后一个
$res
。您正在通过h他们,记下并保留最后一个,然后在
之后将其传递给你的
开始(我正努力不为你编写代码-你可以做到!:)在你检查
是否有更多的
之前,你是否考虑过获得第一个100分?也许你可以得到100分,然后(有更多)。。。。
Fatal error: Uncaught exception 'Stripe\Error\InvalidRequest' with message 'No such charge: 0' in C:\wamp64\www\...\stripe-php-5.1.3\lib\ApiRequestor.php:124 from API request '...' in C:\wamp64\www\...\stripe-php-5.1.3\lib\ApiRequestor.php on line 124