【问题标题】:how to know whether key exists in Json string [duplicate]如何知道Json字符串中是否存在密钥[重复]
【发布时间】:2012-04-27 21:51:42
【问题描述】:

可能重复:
How to check if an array element exists?

抱歉,如果我错了,我是 PHP 新手,有没有办法在 PHP 中使用 json_decode 函数解码后找出 Json 字符串中是否存在密钥。

$json = {"user_id":"51","password":"abc123fo"};

简介:

$json = {"password":"abc123fo"};
$mydata = json_decode($json,true);
user_id = $mydata['user_id'];

如果json字符串不包含user_id,它会抛出Undefined index user_id这样的异常,那么有什么方法可以检查Json字符串中是否存在key,请帮助我,我正在使用PHP 5.3 and Codeigniter 2.1 MVC提前谢谢

【问题讨论】:

标签: php codeigniter


【解决方案1】:

如果您还想检查该值是否不是null,您可以使用isset

if( isset( $mydata['user_id'] ) ){
   // do something
}

array_key_existsisset 的区别在于与

$json = {"user_id": null}

array_key_exists 将返回 trueisset 将返回 false

【讨论】:

    【解决方案2】:

    你可以试试array_key_exists

    它返回一个布尔值,所以你可以像这样搜索它:

    if(array_key_exists('user_id', $mydata)) {
        //key exists, do stuff
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-11
      • 2011-02-15
      • 2013-07-03
      • 2021-06-01
      • 1970-01-01
      • 2011-02-22
      • 2011-04-20
      相关资源
      最近更新 更多