使用 PHP 搜索 Stripe 的 JSON 响应值

斯特凡诺

我知道这个问题已经做过好几次了,但是经过几次测试后,我真的不知道怎么做。我正在使用 Stripe 实施 SEPA 付款。我已设法将所有信息发布到 Stripe,但很难在 JSON 响应中获取值。

在这里,我需要的是最后的“ mission_url ”值:

{
  "id": "XXXXXXXXXXX",
  "object": "customer",
  "account_balance": 0,
  "created": XXXXXXXXXXX,
  "currency": null,
  "default_source": "XXXXXXXXXXX",
  "delinquent": false,
  "description": null,
  "discount": null,
  "email": null,
  "livemode": true,
  "metadata": {},
  "shipping": null,
  "sources": {
    "object": "list",
    "data": [
      {
        "id": "XXXXXXXXXXX",
        "object": "source",
        "amount": null,
        "client_secret": "XXXXXXXXXXX",
        "created": XXXXXXXXXXX,
        "currency": "eur",
        "customer": "XXXXXXXXXXX",
        "flow": "none",
        "livemode": true,
        "metadata": {},
        "owner": {
          "address": {
            "city": "XXXXXXXXXXX",
            "country": "XXXXXXXXXXX",
            "line1": null,
            "line2": null,
            "postal_code": "00000",
            "state": null
          },
          "email": null,
          "name": "John Doe",
          "phone": null,
          "verified_address": null,
          "verified_email": null,
          "verified_name": null,
          "verified_phone": null
        },
        "status": "chargeable",
        "type": "sepa_debit",
        "usage": "reusable",
        "sepa_debit": {
          "bank_code": "XXXXXXXXXXX",
          "branch_code": "XXXXXXXXXXX",
          "country": "XXXXXXXXXXX",
          "fingerprint": "XXXXXXXXXXX",
          "last4": "XXXXXXXXXXX",
          "mandate_reference": "XXXXXXXXXXX",
          "mandate_url": "https://hooks.stripe.com/adapter/sepa_debit/file/random_keys"
        }
      }
    ],
    "has_more": false,
    "total_count": 1,
    "url": "XXXXXXXXXXX"
  },
  "subscriptions": {
    "object": "list",
    "data": [],
    "has_more": false,
    "total_count": 0,
    "url": "XXXXXXXXXXX"
  }
}

没有任何方法可以在不创建巨大的 foreach 的情况下获得它吗?

谢谢 :)

文件

首先你的 json 是无效的,因为你有几个实例,"created": XXXXXXXXXXX,所以下面更正了 json 和使用示例json_decode

<?php


$json = '{
    "id": "XXXXXXXXXXX",
    "object": "customer",
    "account_balance": 0,
    "created": "XXXXXXXXXXX",
    "currency": null,
    "default_source": "XXXXXXXXXXX",
    "delinquent": false,
    "description": null,
    "discount": null,
    "email": null,
    "livemode": true,
    "metadata": {},
    "shipping": null,
    "sources": {
        "object": "list",
        "data": [{
            "id": "XXXXXXXXXXX",
            "object": "source",
            "amount": null,
            "client_secret": "XXXXXXXXXXX",
            "created": "XXXXXXXXXXX",
            "currency": "eur",
            "customer": "XXXXXXXXXXX",
            "flow": "none",
            "livemode": true,
            "metadata": {},
            "owner": {
                "address": {
                    "city": "XXXXXXXXXXX",
                    "country": "XXXXXXXXXXX",
                    "line1": null,
                    "line2": null,
                    "postal_code": "00000",
                    "state": null
                },
                "email": null,
                "name": "John Doe",
                "phone": null,
                "verified_address": null,
                "verified_email": null,
                "verified_name": null,
                "verified_phone": null
            },
            "status": "chargeable",
            "type": "sepa_debit",
            "usage": "reusable",
            "sepa_debit": {
                "bank_code": "XXXXXXXXXXX",
                "branch_code": "XXXXXXXXXXX",
                "country": "XXXXXXXXXXX",
                "fingerprint": "XXXXXXXXXXX",
                "last4": "XXXXXXXXXXX",
                "mandate_reference": "XXXXXXXXXXX",
                "mandate_url": "https://hooks.stripe.com/adapter/sepa_debit/file/random_keys"
            }
        }],
        "has_more": false,
        "total_count": 1,
        "url": "XXXXXXXXXXX"
    },
    "subscriptions": {
        "object": "list",
        "data": [],
        "has_more": false,
        "total_count": 0,
        "url": "XXXXXXXXXXX"
    }
}';

$data = json_decode($json);
$mandate_url = $data->sources->data[0]->sepa_debit->mandate_url);
echo $mandate_url;


?>

或者,您可以将 json 放入关联数组并使用以下语法

$data = json_decode($json, true);
$mandate_url = $data['sources']['data'][0]['sepa_debit']['mandate_url'];
echo $mandate_url;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP:如何使用 array_filter() 过滤 JSON 响应值?

来自分类Dev

打印 json 响应值

来自分类Dev

使用php搜索JSON中的值

来自分类Dev

PHP MySQL:通过遍历循环将Json响应值插入数据库

来自分类Dev

Jmeter从JSON聚合某些响应值以在下一个请求中使用

来自分类Dev

jQuery json对变量的响应值

来自分类Dev

访问 API JSON 响应值

来自分类Dev

使用PHP从Stripe Webhook JSON获取数据

来自分类Dev

使用Ruby搜索JSON响应

来自分类Dev

如何在Jquery中填充JSON响应值

来自分类Dev

json查询响应值显示未定义

来自分类Dev

将json响应值分配给textview

来自分类Dev

Ajax 请求从 PHP 获取不同的响应值

来自分类Dev

使用 ajax、php 和 json 搜索表单

来自分类Dev

如何使用请求从json搜索值?

来自分类Dev

使用JSON搜索JSON

来自分类Dev

使用 PHP 进行精确值搜索

来自分类Dev

搜索JSON PHP

来自分类Dev

PHP:将 AJAX 响应值分配给 PHP 变量

来自分类Dev

尝试获取JSON响应值时获取字符串而不是列表

来自分类Dev

如何将JSON响应值与Postman环境变量匹配?

来自分类Dev

如何使用赛普拉斯断言搜索JSON响应

来自分类Dev

使用JSON响应按关键字搜索Shopify产品

来自分类Dev

PHP PDO:在MySQL的JSON对象中搜索数组值

来自分类Dev

使用Angular搜索JSON

来自分类Dev

使用php代码搜索

来自分类Dev

如何使用Promise.allSettled访问fetch / http调用的响应值?

来自分类Dev

如何获取ajax响应值/字符串并在if条件下使用它?

来自分类Dev

使用Php在Stripe中使用Checkout