使用PHP获取所有重复值的键 [英] Get all keys for duplicate values using PHP

查看:71
本文介绍了使用PHP获取所有重复值的键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I have a PHP array like below

Array
(
    [825] => ca_knife_features 
    [838] => ca_knife_features 
    [795] => ca_knife_handle_materials 
    [853] => ca_knife_handle_materials 
)

我想将所有键组合为一个相同的值,并将该值作为键,如下所示:

and I want to combine all the keys for a same values and make the value as key as below

Array
(
[ca_knife_features]=>array(825,838)
[ca_knife_handle_materials]=>array(795,853)
)

我该怎么做?

推荐答案

获取所有值的所有键很容易.

Getting all the keys for all the values is easy.

foreach ($array as $key => $value) {
    $result[$value][] = $key;
}

但是,这不仅会得到重复的值.有不同的方法可以做到这一点.一种方法是过滤结果,使其仅显示具有多个键的值.

But that doesn't get only the duplicate values. There are different ways to do that. One way is by filtering the result to only show values with more than one key.

$result = array_filter($result, function($item) {
    return count($item) > 1;
});

这篇关于使用PHP获取所有重复值的键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆