我有以下数组:
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"
该函数应返回false。 如果我有
$category = 6;
$datetocheck = "2015-02-27 20:00"
该函数应返回true。
这https://stackoverflow.com/a/12456356/1092632看起来像我想做的,但我无法让它发挥作用。也许这不是一个合适的功能。
任何暗示/帮助都非常感激。
// EDIT 我用过这个功能(来自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的真实。
答案 0 :(得分:1)
试试这个:
$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')));