我想知道如何在PHP中获得条纹api数组的数据。这是我的代码:
require_once('vendor/autoload.php');
$stripe = new StripeStripeClient(
'KEY'
);
$stripe->customers->retrieveSource(
'CUSTOMER_ID',
'CARD_ID',
);
print_r($stripe);
我试图使用print_r来获得屏幕上的结果,但没有向我显示该数据,只是向我显示了条纹的api细节。我如何从STRIPE的客户那里获得信用卡的详细信息?
你用Stripe的API发出的每个API请求都会返回一个对象。如果要访问响应,必须将其存储在一个变量中。
如果我们以你为例,你想要这个
$stripe = new StripeStripeClient('sk_test_123');
$card = $stripe->customers->retrieveSource('cus_123','card_ABC');
这样,$card
变量现在是库中Card
类的一个实例,具有您所关心的所有属性。
现在,这是大部分被弃用的旧代码。2018年,Stripe发布了一个名为PaymentMethods API的新API,该API将所有支付方式类型统一在一起,从卡到ACH/SEPA/BACS Debit再到iDEAL和Konbini等许多其他支付方式。像card_123
这样的遗留对象也可以使用该API。
我强烈建议使用新的API,所以调用Retrieve PaymentMethod API来检索一个特定的API,像这样:
$stripe = new StripeStripeClient('sk_test_123');
$pm = $stripe->paymentMethods->retrieve('pm_123');
或者您可以使用type
参数调用List PaymentMethods API来查找附加到该客户的所有卡。这将返回一个PaymentMethods列表,您可以按照下面的文档对其进行分页:
$stripe = new StripeStripeClient('sk_test_123');
$paymentMethods = $stripe->customers->allPaymentMethods(
'cus_9utnxg47pWjV1e',
[
'type' => 'card',
]
);
foreach ($paymentMethods->autoPagingIterator() as $paymentMethod) {
// Do something with $paymentMethod
}