您的位置:首页 > 其它

第45篇一对多实现(二)及array_filter及 array_flip及array_intersect

2017-02-15 07:46 190 查看
关键词:一对多实现, array_filter, array_flip,array_intersect

一、一对多实现

1.1 运行平台

老师端:https://123.57.206.36:9100/demos/index.html

学生端:https://123.57.206.36:9100/demos/student.html

二、php

2.1PHP array_filter() 函数

1)定义和用法

array_filter() 函数用回调函数过滤数组中的元素。

该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回给结果数组。数组键名保持不变。

2)语法

array_filter(array,callbackfunction);



3)看个例子如下:

用回调函数过滤数组中的元素:



注:这个函数很有意思,需要理解的是$var & 1,这句话的意思是二进制与,成立则返回。经测试字符串需要转整型才能与之&运算,而字符串转整型之后都变为0,所以&运算后仍为0,而2的二进制为010,与001的&运算为0,过滤掉。3的二进制为011,与001的&运算为1,故保留;同样,4的二进制为100,与001的&运算为0,过滤掉;5的二进制为101与001的&运算为1,保留了下来。

注:可以通过以下函数进行字符串转数值,并进行输出验证。



2.2PHP array_flip() 函数

1)定义和用法

array_flip() 函数用于反转/交换数组中的键名和对应关联的键值。

2)语法

array_flip(array);



3)看个例子如下:



 注:这个函数的作用是键和值进行交换。

2.3PHP array_intersect() 函数

1)定义和用法

array_intersect() 函数用于比较两个(或更多个)数组的键值,并返回交集。

该函数比较两个(或更多个)数组的键值,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键值。

2)语法

array_intersect(array1,array2,array3...);



3)看个例子:



注:只要键名相值在三个数组中都出现,就会反馈到结果集中去。

2017年2月14日星期二
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息