<pre>
<?php

header("Content-Type:text/html;charset=utf-8");
/*知识点一:array_diff — 计算数组的差集
原形:array array_diff ( array $array1 , array $array2 [, array $... ] )
功能:对比返回在 array1 中但是不在 array2 及后面参数数组中的值。
返回:返回一个数组,该数组包括了所有在 array1 中但是不在任何其它参数数组中的值。
注意:返回的数组键名保留不变。
应用背景案例分析:
假设我们做一个邮件群发系统,邮件都在数组 $a中保留。
如果有本次我们不想发送给其中特定的几个邮箱,没必要从$a中删除,因为下次还有添加比较麻烦。
处理方法:在做一个数组$b,让系统自动差集计算,不对在$b中包含的几个用户发邮件,其他都发送。*/
//例:
/*$a = range(1,9);        //创建一个包含 1,2,3,4,5,6,7,8,9 的数组
$b = array(5,6,1);        //计划排除其中的 1,5,6
$c = array_diff($a,$b); //结果为  2,3,4,7,8,9*/ //例:
$a = array('动', '美', '学', '院');
$b = array('a'=>'学','美');
$c = array_diff($a,$b);
var_export($c);     //结果为 动 院/*知识点二:array_diff_assoc — 带索引检查计算数组的差集
函数原形:array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )
功能:计算差集,要求键值对完全相同的才进行减去。
返回:返回一个数组,该数组包括了所有在 array1 中但是不在任何其它参数数组中的"键值对"
*/
$a = array('d' => '动', 'l' => '美', 'x' => '学', 'y' => '院');
$b = array('l' => '美','a' => '动' );
$c = array_diff_assoc($a,$b);
var_export($c);
//结果:array ( 'd' => '动', 'x' => '学', 'y' => '院', )/*知识点三:array_diff_key — 使用键名比较计算数组的差集
函数原形:array array_diff_key ( array $array1 , array $array2 [, array $... ] )
根据 array1 中的键名和 array2 进行比较,返回不同键名的项。
本函数和 array_diff() 相同只除了比较是根据键名而不是值来进行的。
*/
$a = array('d' => '动', 'l' => '美', 'x' => '学', 'y' => '院');
$b = array('d' => '学','l' => '美');
$c = array_diff_key($a,$b);
var_export($c);     //结果:array ( 'x' => '学', 'y' => '院', )/*目前关于array_diff的函数及变种一共有八个分别如下,比较实用的有三个
array_diff_assoc — 带索引检查计算数组的差集
array_diff_key — 使用键名比较计算数组的差集
array_diff_uassoc — 用用户提供的回调函数做索引检查来计算数组的差集
array_diff_ukey — 用回调函数对键名比较计算数组的差集
array_diff — 计算数组的差集
array_udiff_assoc — 带索引检查计算数组的差集,用回调函数比较数据
array_udiff_uassoc — 带索引检查计算数组的差集,用回调函数比较数据和索引
array_udiff — 用回调函数比较数据来计算数组的差集
*/?>

PHP:第四章——PHP数组array_diff计算数组差集相关推荐

  1. php手册数组函数,PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集...

    PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集 array_diff (PHP 4 >= 4.0.1, PHP 5) array_d ...

  2. 计算机科学计算第二版第四章,大连理工大学 计算机科学计算 第四章2.pdf

    大连理工大学 计算机科学计算 第四章2 第4章 插值与逼近 4.2.4 Hermite插 值 4.2.4 Hermite插值 理论和应用中提出的某些插值问题,要求插值函数p (x) 具有一定的光滑度, ...

  3. C语言数组练习-计算数组中元素的最大值及其所在的行列下标值

    要求:按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值.其中m和n的值由用户键盘输入.已知m和n的值都不超过10. ----------------- ...

  4. oracle第三章、第四章作业

    ---------------------第三章课后作业----------------------------- --1.查询入职时间在1982-7-9之后,并且不从事SALESMAN工作的员工姓名 ...

  5. php 数组合并_PHP数组常用函数分类整理

    微信公众号:PHP在线 PHP数组常用函数分类整理 一.数组操作的基本函数 数组的键名和值array_values($arr); 获得数组的值array_keys($arr); 获得数组的键名arra ...

  6. 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算

    第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说,用numpy的主要目的在于应用矢量化运算.Numpy并没有多么高级的数据分析功能,理解Numpy ...

  7. 【数据结构总结】第四章:串、数组和广义表(线性结构)

    第四章:串.数组和广义表(线性结构) 提示:本文主要是以思维导图的形式概括数据结构第一章的精华内容,基本不会用到文字性的内容,目的是为了给大家梳理每个重要的知识点的相关概念,方便大家在复盘的时候快速阅 ...

  8. C语言深度剖析书籍学习记录 第四章 指针和数组

    p 称为指针变量,p 里存储的内存地址处的内存称为 p 所指向的内存. 指针变量 p 里存储的任何数据都将被当作地址来处理 一个基本的数据类型(包括结构体等自定义类型)加上"*" ...

  9. 《数据结构》-第四章 串、数组和广义表(习题)

    第四章 串.数组和广义表练习题 本章考点较少易于掌握,对于串的重点考点为串的模式匹配算法:数组的主要考点为数组下标与存储地址计算和特殊矩阵的压缩存储方法:针对广义表的考点主要为在广义表中取原子项(表) ...

最新文章

  1. 《中国人工智能学会通讯》——11.66 结构属性表示及其在脑影像分析中的应用...
  2. URI URL 简介区别
  3. java访问map_java.map使用
  4. HTML 样式兼容不同设备类型
  5. 第11讲:Reqeusts + PyQuery + PyMongo 基本案例实战
  6. html怎么防止表单重复提交,js防止表单重复提交的解决方法
  7. python时间序列数据分析,Python数据分析之时间序列
  8. android 融云浏览大图,融云 Android sdk kit 头像昵称更新机制
  9. 太阳能工程联箱知识_超导热管集热器为何在太阳能热水工程中咨询量那么高
  10. Python 测试驱动开发(四)测试及重构的目的(下)
  11. LoadRunner中的参数与变量-产生20位的随机数
  12. 国庆记事之一:小白结婚及我跟女朋友吵架
  13. 搭建直播平台,Android端直播APP源码如何实现礼物效果
  14. FireFox、chrome通过插件使用IE内核,IE Tab v2
  15. make px4_sitl gazebo报错:FAILED: ROMFS/romfs_extract.stamp
  16. 抽象代数笔记2——群
  17. 在家搭建 Minecraft 服务器,和远程小伙伴一起联机
  18. 【java毕业设计】基于java+SSH+JSP的固定资产管理系统设计与实现(毕业论文+程序源码)——固定资产管理系统
  19. Probability and Hypothesis Testing
  20. ffmpeg 图片转视频

热门文章

  1. onSaveInstanceState在系统之后可能会杀掉Activity时调用,onStop之前
  2. Convolutional Neurons Network 训练参数与连接数计算过程
  3. MyBatis多表查询之XML和注解实现(resultMap结果集映射配置数据库字段与实体类属性一一映射)
  4. 网络工程:1.2 CISCO 路由设备登录命令
  5. MapReduce程序的优化
  6. 人工智能对医疗和健康产业的冲击和革命——体外克隆
  7. 【锋利的Jquery】读书笔记五
  8. hammer用法 jquery.hammer.js
  9. MFC视图切换大全总结
  10. struts1.3执行流程分析