繁体   English   中英

如何迭代Stripe订阅集合

[英]How to iterate over Stripe subscription collection

我目前正在与Stripe集成,在更新现有订阅之前,我需要检索所有现有订阅以找到正确的订阅ID。

但是,当我使用Stripe PHP库时,我似乎无法迭代实际的订阅集合。

这是我检索订阅集合的方式:

$subscriptions = $customer->subscriptions->all();

我也尝试了这个,它应该是相同的,似乎并没有在最终结果上有所作为:

$subscriptions = \Stripe\Customer::retrieve( $customer->id )->subscriptions->all();

为了理智,在获得订阅集合后,我echo一个count()来查看它包含的元素数量:

echo count( $subscriptions );  // echos '1' which is what I expect.

当我print_r()整个$subscriptions对象时,我确实看到了一个现有的订阅,所以我已经验证它已被检索。

然后我想简单地用foreach遍历集合。 这应该是可能的,因为StripeObject (返回集合的基类)实现了ArrayAccess

foreach( $subscriptions as $subscription )
{
   print_r( $subscription );
}

但是,这不会导致任何结果。

如何正确迭代Stripe订阅集合?

条带“列表”API调用返回“列表对象”或“集合”。 这些objets在其data属性中包含实际列表。

在PHP中,您可以迭代这样的集合:

$subscriptions = $customer->subscriptions->all();

echo count($subscriptions->data); // Number of resources returned

foreach ($subscriptions->data as $subscription) {
    // Do something with $subscription
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM