多维数组搜索

Multidimensional Array Search

我有以下数组:

Array
(
    [0] => Array
        (
            [6] => 2015-02-27 19:00
        )

    [1] => Array
        (
            [6] => 2015-02-27 20:00
        )

    [2] => Array
        (
            [6] => 2015-02-27 21:00
        )

)

“6”是一个类别,我想检查该类别是否存在于相应的日期。

我有

$category = 7;
$datetocheck = "2015-02-27 20:00"

该函数应该 return 为假。 如果我有

$category = 6;
$datetocheck = "2015-02-27 20:00"

该函数应该 return 为真。

这 看起来像我想做的,但我无法让它工作。也许这不是一个合适的功能。

任何 hint/help 高度赞赏。

//编辑 我用了这个功能(从上面Post)

function in_multiarray($elem, $array,$field)
{
    $top = sizeof($array) - 1;
    $bottom = 0;
    while($bottom <= $top)
    {
        if($array[$bottom][$field] == $elem)
            return true;
        else 
            if(is_array($array[$bottom][$field]))
                if(in_multiarray($elem, ($array[$bottom][$field])))
                    return true;

        $bottom++;
    }        
    return false;
}

但是当我使用它时

in_multiarray("2015-02-27 20:00",$myArray,6)

我收到未定义的索引错误。 我试过 "in_array()" 但这对 6 和 7 来说是正确的。

试试这个:

$array = array(
        array(6 => '2015-02-27 19:00'),
        array(6 => '2015-02-27 20:00'),
        array(6 => '2015-02-27 21:00'));


    function search_in_array($search_in, $search_for){
        foreach($search_in as $arr){
            if(array_key_exists($search_for[0], $arr) 
                && in_array($search_for[1], array_values($arr)))
            return true;
        }

        return false;
    }


    var_dump(search_in_array($array, array(6, '2015-02-27 19:00')));