php - 我想获得两个数组之间的差异

标签 php html mysql codeigniter

我有以下两个数组:$array1$array。我想要这两个数组之间的差异。
也就是说,如何找到第二个数组中不存在的值?

$this->db->select('subject_id');
$this->db->where('section_id', $row['section_id']);
$this->db->where('day', $row['day']);

$progress = $this->db->get('class_routine')->result_array();
foreach ($progress as $key => $row3):

    $number1 = $row3['subject_id'];
    $array1 = explode(',', $number1);
    foreach ($array1 as $item1) {
        echo "<div style=\"color:#000;\">".$item1."</div>";
    }

endforeach;

$this->db->select('subject_id');
$this->db->where('section_id', $row['section_id']);
$this->db->where('day', $row['day']);
$progress = $this->db->get('progress')->result_array();
foreach ($progress as $row4):

    // echo $row4['subject_id'];

    $numbers = $row4['subject_id'];
    $array = explode(',', $numbers);
    foreach ($array as $items) {
        //echo $items;
        echo "<div style=\"color:red;\">".$items."</div>";

        $result = array_diff($array1, $array);

        echo "<div style=\"color:green;\">".$result."</div>";

    }

endforeach;

if($item1 != $items)
{
}  else {
    echo "All Present";
}

我尝试了以下 PHP 函数 array_diff - 它回显为 以下:

1
2
3
2
Array
3
Array

最佳答案

你可能不应该循环array_diff。尝试更多类似这样的事情:

<?php
$array1 = array(....whatever goes in here....);
$array2 = array(....whatever goes in here....);
$result = array_diff($array1, $array2);  //will return an array

print_r($result);
?>

$array1 中多次出现的情况均以相同方式处理。这将输出一个包含差异的数组。

您可以从 php.net 获取此类信息

来源:php.net/array_diff

关于php - 我想获得两个数组之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40969941/

相关文章:

PHP:格式化来自mysql数据库的日期?

php - MySQL/PHP 中的递归处理

php - SugarCRM 6.5 中的动态下拉菜单故障排除

javascript - CSS渐变无法刷新

html - 对齐 Div 中的两个标签

Javascript:获取以@符号开头的用户名子字符串

mysql - 如何提取具有最大值的行?

php - 给定日期作为参数检索月份和年份

php select语句没有给出答案

php - 如何设置显示为图像的按钮的样式