如何从 Stripe JSON 对象获取二级数据

how to get second level data from Stripe JSON object

我有功能可以检索 1 级数组数据,但不能在充电后检索 return JSON 字符串中的 2 级。

else if(!empty($_SESSION['SESS_PLAN_BUY_CODE'])){
       $pcharge = \Stripe\Customer::create(array(
       "source" => $_POST['stripeToken'],
       "plan" => $_SESSION['SESS_PLAN_BUY_CODE'],
       "email" => $_SESSION["SESS_EMAIL"]
       ));
    echo "My customer id is: " . $pcharge->id;
    echo'<br>';
    $stuff = json_decode($pcharge->subscriptions);
    var_dump($stuff);

实际 JSON return 字符串: JSON

以上代码的输出是:

我的客户 id 是:cus_6cvCQdpdhmQlGe NULL

预期输出:

我的客户 id 是:cus_6cvCQdpdhmQlGe 1

我试过了:

$stuff = $pcharge->subscriptions[0];
$stuff = $pcharge->subscriptions['total_count'];
$stuff = json_decode($pcharge->subscriptions);

和几个循环 我收到 NULL 或其他一些错误,表明程序员不知道他在做什么。

如何获取 Stripe JSON return 字符串中的 level 2level 3 数据?

您不需要调用 json_decode(),Stripe API 会在内部完成所有解码。您只需要访问它 returns.

的对象和数组
$pcharge = \Stripe\Customer::create(array(
    "source" => $_POST['stripeToken'],
    "plan" => $_SESSION['SESS_PLAN_BUY_CODE'],
    "email" => $_SESSION["SESS_EMAIL"]
));
echo "My customer id is: " . $pcharge->id;
echo'<br>';
$stuff = $pcharge->subscriptions;
echo "Subscription count is: " . count($stuff->data); // total_count isn't returned by default

如果您想访问订阅,请使用 $stuff->data[$i]