我有一个数组
template <bool...> struct bool_pack;
template <bool... v>
using all_true = std::is_same<bool_pack<true, v...>, bool_pack<v..., true>>;
template <class... Args>
struct Signal {
template <class... Dargs, class = typename std::enable_if<all_true<
std::is_same<Args, typename std::decay<Dargs>::type>{}...
>{}>::type>
void broadcast(Dargs &&...) {}
};
我要检查另一个数组,以便$check = ['a', 'b', 'c'];
的值与$check
中的键匹配
$actual
我无法使用$actual = ['a' => 'one', 'b' => 'two', 'c' => 'three'];
,因为数组diff在比较值时起作用,在这种情况下,我想将一个数组的值与另一个数组中的键进行比较。
答案 0 :(得分:4)
您可以使用array_keys();
<?php
$check = ['a', 'b', 'c'];
$actual = ['a' => 'one', 'b' => 'two', 'c' => 'three'];
$result = array_diff(array_keys($actual), $check);
print_r($result);
在这种情况下,array_diff返回一个空数组,因为找到了所有键