查找Json——php中是否存在一个键


Finding whether a key is present in Json--- php

我是php新手,我有一个这样的Json:

{
  "customer_id": "guest_user_101",
  "merchantId": "guest",
  "cards": 
  [
    {
      "card_token": "0784ba0c-dc07-489e-a57d-16dfcb39868f"
    },
    {
      "card_token": "fe4ebe01-bbb6-46b6-8e49-5c572ee20bc7"
    }
  ]
}

我想知道cards中是否有一个card_token。有什么简单而优雅的方法吗?注意,也可能存在cards为空列表的情况。

目前我是这样做的:

$json->cards[0]->card_token

但是我想会有更好的办法来解决这个问题。

function is_card_token_present($json)
{   
    $present = false;
    foreach($json['cards'] as $card)
        if(isset($card['card_token'])) 
            $present = true;
    return $present;
}

应该工作:)可能需要一点调整,因为我现在不能测试它,但概念是存在的。

相关文章: