php - 如何将循环值与顺序不相同的数组值进行比较?

标签 php arrays

我有一个从 1 到 4 的循环,我有一个包含 1、2 和 4 的数组,但缺少数字 3。如何将缺少的 3 放入或替换为 0 作为我唯一的想法来解决我的问题问题,还是得到所有相同的值然后比较双方?因为我需要比较两边是否相同。

使用此代码,我收到错误:“ undefined offset 3”。

$a = array(1,2,4);
for ($i=1; $i <= 4; $i++) {
    if ($i==$a[$i]) {
        echo 'true';
    } else {
        false;
    }
}

有没有其他方法可以比较所有具有相同值的那些

1 & 1 = true
2 & 2 = true
3 &   = false
4 & 4 = true

并显示类似的东西

1. true
2. true
3. false
4. true

最佳答案

可能最直接的方法是使用 in_array() .

$a = [1, 2, 4];

for ($i = 1; $i <= 4; $i++) { 
    echo $i.'. '.(in_array($i, $a) ? 'true' : 'false').PHP_EOL; 
}

这是一个有效的 example .

关于php - 如何将循环值与顺序不相同的数组值进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39060589/

相关文章:

php - 从多个下拉列表中填充表格

php - 使用 xpath 和 DOMDocument 检索元素

php - 删除字符串后的字符?

javascript - 使用 Javascript 选择一个字符串(当前)以及年份

javascript - 组合/匹配数组

javascript - 如何将嵌套的对象数组转换为数组对象

php - fatal error : Call to undefined function curl_init()

php - dompdf - 当我指定 a4,横向时停止

arrays - 在 swift 3 中使用 Json

c - 将返回的 cstring 分配给变量