php函数 array_diff

Posted brady-wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php函数 array_diff相关的知识,希望对你有一定的参考价值。

array_diff ( array $array1 , array $array2 [, array $... ] ) : array

对比 array1 和其他一个或者多个数组,返回在 array1 中但是不在其他 array 里的值。

 
<?php
/**
 * Created by PhpStorm.
 * User: mac
 * Date: 2019/4/13
 * Time: 09:37
 */


/**
 * array_diff ( array $array1 , array $array2 [, array $... ] ) : array
对比 array1 和其他一个或者多个数组,返回在 array1 中但是不在其他 array 里的值。
 */

$arr1 = [1,3,4,6,9];  //比如修改用户权限 新加的权限
$arr2 = [2,3,6,8,10]; // 旧有的权限

echo "<pre>";
print_r(array_diff($arr1,$arr2)); //最新的需要插入的权限 
print_r(array_diff($arr2,$arr1)); //需要删除的旧有的,比当前提交过来的权限多的



/**************************************************/
$arr1 = [1,3,4,6,9];  //比如修改用户权限 新加的权限
$arr2 = [2,3,6,8,10]; // 旧有的权限
$arr3 = [1,2,3,4,5];

echo "<pre>";
print_r(array_diff($arr1,$arr2,$arr3)); //最新的需要插入的权限
print_r(array_diff($arr2,$arr1,$arr3)); //需要删除的旧有的,比当前提交过来的权限多的


$arr4 = array_unique(array_merge($arr2,$arr3));
print_r($arr4);

print_r(array_diff($arr1,$arr4));

//当有第三个参数的时候 是指第一个和 后面所有的数组进行对比

 

 

以上是关于php函数 array_diff的主要内容,如果未能解决你的问题,请参考以下文章

php array_intersect() 和 array_diff() 函数

带有实例或自定义回调函数的 PHP array_diff?

求数组差/交集函数-php数组函数

PHP PHP array_diff()完全比较

php 求两个数组的差集应该注意的事情

深思 PHP 数组遍历的差异(array_diff 的实现)