PHP 检查数组值是否与同一位置的另一个数组的值匹配

我正在用 PHP 创建一个测验。我有一个答案键数组,然后我根据用户的答案构建另一个数组。我想比较两个数组并确定有多少数组值与答案键数组匹配。我目前正在使用array_intersect(),但这个函数似乎并不关心数组值的索引。


$user_answers = array(1,3,1);

$answer_key = array(3,1,1);

$result = array_intersect($user_answers, $answer_key);

echo count($result);

这会返回3,但我希望它返回1。我怎样才能做到这一点取决于array_intersect数组值的索引?


慕斯王
浏览 135回答 2
2回答

料青山看我应如是

你应该使用 array_intersect_assoc();所以你的代码会变成......$user_answers = array(1,3,1);$answer_key = array(3,1,1);$result = array_intersect_assoc($user_answers, $answer_key);echo count($result);结果为 1。

慕婉清6462132

array_intersect_assoc() 函数也比较数组和关联键。试试下面的代码   $user_answers = array(1,3,1,5,8,8,7);    $answer_key = array(3,1,1,5,7,9,7);    $result = array_intersect_assoc($user_answers, $answer_key);    echo count($result);输出3
打开App,查看更多内容
随时随地看视频慕课网APP