检查 JSON 关联数组中是不是存在值

Posted

技术标签:

【中文标题】检查 JSON 关联数组中是不是存在值【英文标题】:Check if value exists in JSON associative array检查 JSON 关联数组中是否存在值 【发布时间】:2015-10-09 03:24:58 【问题描述】:

我有一个如下所示的数组:

[
    
        "date":"2015-07-10",
        "count":"1"
    ,
        "date":"2015-07-11",
        "count":"3"
    
]

由以下 Eloquent 查询给出:

$posts = Post::select(array(
        DB::raw('DATE(`created_at`) as `date`'),
        DB::raw('COUNT(*) as `count`')
    ))
    ->where('created_at', '>', Carbon::today()->subWeek())
    ->groupBy('date')
    ->orderBy('date', 'DESC')
    ->get()
    ->toArray();

如何检查某个日期是否已经在数组中?我尝试了以下方法,但它返回 false(即该值不在数组中,即使它在):

return in_array("2015-07-10", $posts);

【问题讨论】:

【参考方案1】:

在这种情况下,您可以使用array_column

return in_array("2015-07-10", array_column($posts, 'date'));

DOCS

【讨论】:

成功了,谢谢!我会尽可能(10 分钟)将其标记为答案。 真棒答案!

以上是关于检查 JSON 关联数组中是不是存在值的主要内容,如果未能解决你的问题,请参考以下文章

php 中 判断数组中是不是有值

检查 JSON 数组中是不是存在值,如果不存在则检查下一个数组(Swift / SwiftUI)

如何检查多维关联数组中的重复值?

验证 JSON 数组是不是有一个具有固定整数值的关联数组

PL/SQL 关联数组验证索引是不是存在

PHP 数组中的每个ID键关联一个值,可不可以关联两个值?