【问题标题】: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);

【问题讨论】:

    标签: php arrays laravel laravel-4 laravel-5


    【解决方案1】:

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

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

    DOCS

    【讨论】:

    • 成功了,谢谢!我会尽可能(10 分钟)将其标记为答案。
    • 真棒答案!
    猜你喜欢
    • 1970-01-01
    • 2017-09-05
    • 2012-08-02
    • 1970-01-01
    • 1970-01-01
    • 2020-04-11
    • 2018-02-24
    • 1970-01-01
    • 2014-09-10
    相关资源
    最近更新 更多