From a performance perspective, what is the best way to check whether an associated array has and only has a given set of keys? Same question, but from a code conciseness perspective?
function checkArrKeys(array $arr, array $keys):bool {
$arrKeys=array_keys($arr);
sort($arrKeys);
sort($keys);
return $arrKeys===$keys;
}
function checkArrKeys(array $arr, array $keys):bool {
return ($cnt = count(array_intersect(array_keys($arr), $keys)))===count($arr) && $cnt===count($keys);
}
function checkArrKeys(array $arr, array $keys):bool {
return !(array_diff_key($arr, array_flip($keys)) || array_diff_key(array_flip($keys), $arr));
}