如果比较两个变量php

时间:2013-06-17 04:28:18

标签: php arrays if-statement

我目前拥有2个变量,对于$arrAns,它包含用户为复选框选择的不同答案。 $ arrAns的示例为1,2,3。对于$arr,它是包含问题所有选项的选项变量。 $arr的示例为1,2,3,4,5,6。

这是我试图比较的代码,如果$ arrAns == $ arr,那么复选框输入将被“检查”。否则,它将留空。

但是当我尝试使用代码时,如果用户的选择是1,2,3。有用。但如果用户选择2,3,4非选项将被“选中”。如果用户选择1,3,4,则仅“选中”选项1。

两者之间的逻辑是否有问题?需要帮助,谢谢!

<?php if ($arrAns[$i] == $arr) { 
 ?>
    <input type="checkbox" name="<?php echo 'qns' . $qID; ?>[]" value="<?php echo $arr; ?>" class="required" checked/> <?php echo $arr; ?><br/>
<?php } else { ?>
    <input type="checkbox" name="<?php echo 'qns' . $qID; ?>[]" value="<?php echo $arr; ?>" class="required"/> <?php echo $arr; ?><br/>
    <?php
} ?>

2 个答案:

答案 0 :(得分:1)

而不是查看元素是否存在我想要检查它是否在数组或结果中。

更改

  <?php if ($arrAns[$i] == $arr) { 

  <?php if (in_array($arr, $arrAns)) { 

答案 1 :(得分:0)

您可以有效地使用in_array()

in_array($arr, $arrAns)