使用in_array函数

时间:2017-07-21 07:56:02

标签: php laravel

我有两个数组我需要与in_array进行比较,但由于某种原因它无法比较,只有我像这样手动替换in_array(294,$ answer)它才显示为true。

$answers ----> // Array ( [0] => 294 [1] => 296 )
$answer  --->  // Array ( [id] => 294 [question_id] => 87 [correct] => 1 )
in_array($answers, $answer)

2 个答案:

答案 0 :(得分:1)

您似乎有$answer = array('id' => 294, 'question_id' => 87, 'correct' => 1 );标识的答案(id)(值294),您需要查明此答案是否为{{1}的有效答案之一s存储在列表中(id)。

PHP函数in_array()是使用的工具,只是以正确的方式使用它。将$answers = array(294, 296);的ID搜索到$answer中存储的ID列表:

$answers

详细了解PHP arrays并且在您到达"Accessing array elements with square bracket syntax"部分之前不要离开该阅读。

答案 1 :(得分:0)

in_array用于搜索数组中的字符串,因此您应该尝试从answers数组而不是整个数组传递单个值。

例如 -

$answers = array(294, 296);
$answer = array('id' => 294, 'question_id' => 87, 'correct' => 1 );

foreach ( $answers as $answer_id ) {

    $check = in_array($answer_id, $answer);

    echo "<pre>";
    var_dump( $check );
    echo "</pre>";
}