比较数组中的值并获取键/索引


Compare values in array and get key/index

i 有数组:

        $array = array(
            3 => array(
                'first' => 'aaa',
                'second' => '111',
                'third' => '!!!'
            ),
            7 => array(
                'first' => 'bbb',
                'second' => '222',
                'third' => '###'
            ),
            9 => array(
                'first' => 'ccc',
                'second' => '333',
                'third' => '^^^'
            ),
        );

和三个变量:

$first = 'bbb';
$second = '222';
$third = '###';

或者可以是数组:

$data = array(
     'first' => 'bbb',
     'second' => '222',
     'third' => '###'
);

我想从$array那里获取这些值的密钥。在此示例中应返回 7。

如何将此数组与$first、$second和$third或数组$data进行比较,并从具有这些值的$array中获取密钥?

试试这个:

      $array = array(
        3 => array(
            'first' => 'aaa',
            'second' => '111',
            'third' => '!!!'
        ),
        7 => array(
            'first' => 'bbb',
            'second' => '222',
            'third' => '###'
        ),
        9 => array(
            'first' => 'ccc',
            'second' => '333',
            'third' => '^^^'
        ),
    );
    $data = array(
        'first' => 'bbb',
        'second' => '222',
        'third' => '###'
    );
    foreach ($array as $key => $val1) {
        $arr_diff = array_diff($val1, $data);
        if(empty($arr_diff))
        {
            echo $key;
        }
    }

对于每个循环,你会正确回答。