PHP1.9--数组
1.array_slice()函数作用是在数组中根据条件取出一段值并返回,如果数组有字符串键,所返回的数组将保留健名
array array_slice(array array ,int offset [,int length [,bool] preserve_keys]])
第一个参数是必须的,调用输入要处理的数组 第二个参数也是必须的,传人一个数值,规定取出元素的开始位置 如果是正数,则从前往后开始去
如果是负数,从后向前去offset 的绝对值 第三个参数,传人一个数值,规定被返回数组的长度,如是负数从后向前,选取该值的绝对值数目元素
如果没有设置,则返回所有元素 第四个参数可选布尔类型,如果为true返回数组保留键名 默认值false 重新设置默认键值
示例:
$arraylamp =array("linx","apache","mysql","php");
//从第二个开始取2个元素
print_r(array_slice($arraylamp,1,2));
//从后面第二取一个元素
print_r(array)slice($arraylamp,-2,1));
2.array_splice()作用是选择数组中的一系列元素,但不返回,而是删除并且用其他代替如果第四个参数提供,则之前选中的那些元素将被第四个
参数指定的数组取代,最后生成数组返回
array array_splice(array $array ,int offset [,int length [,array replacement]] )
第一个参数必须,规定处理数组,第二个参数offset也是必须,传人数组,offset为正数,则从输入数组中该值指定的偏移量开始,如果offset
为负,则从输入数组末尾倒数该值指定的偏移量开始移除 第三个参数,也需要一个数值,如果省略该参数,则移除数组中从offset到结尾的所有
如果length 为正,移除这么多元素,为负,移除offset 到数组末尾倒数length为止中间所有元素 第四个参数可选,被移除的元素由此数组中
元素替代,如果没有移除任何值,则次数组中元素将插入到指定位置。
示例:
$input =array("linux","apache","mysql","php");
array_splice($input ,2)//删除第二个元素以后所有元素
print_r($input);
//从第二个元素开始到倒是第一个位置中间所有元素
array_splice($input ,1,-1);
//最后一个元素被第四个参数值替代
array_splice($input ,-1,1,array("web","www"));
3.array_combine()作用是通过合并两个数组来创建一个新数组,其中一个数组是键名,另一个是数组的值为键值。如果其中一个数组为空,
或者两个数组的元素个数不同,则该函数返回false
array array_combine(array keys,array values)
示例:
$a1=array("os","webserver");
$a2=array("linux","apache");
print_r(array_combine($a1,$a2));
4array_merge()作用吧一个或多个数组合并为一个数组,如果键名重复,该键的键值为最后一个键名对应的值,如果数组是数字索引
则键名会以连续方式重新索引,注意人如果仅仅向array_merge()函数输入一个数组,且键名是整数,则该函数将返回带有整数键名的
新数组,其键名以0开始进行重新索引。
array array_merge( array array1 [,array array2 [,array ....]])
示例:
$a1=array("a"=>"linux","b"=>"apache");
$a2=array("c"=>"mysql","b"=>"php");
print_r($a1,$a2);
$a=array(3=>"PHP",4=>"mysql");
print_r(array_merge($a)); //0开始重新索引
5array_intersect()作用是计算数组交集 返回结果是数组中包含来所有在被比较数组中,也同时出现所有其他参数数组的值,键名保留不变
array array_intersect(array array1,array array2 [,array ...])
示例:
$a=array("linux","apache","mysql");
$b=array("linux","tomact","mysql");
print_r(array_intersect($a,$b));
6.array_diff() 函数作用返回两个数组差集数组,该数组包括来所有在被比较的数组,但是不在任何其他参数数组中的元素值,返回数组,键名不变
array array_diff(array array1,array array2 [,array ...])
示例:
$a1=array("linux","mysql","apache");
$a2=array("linux","mysql","tomcat");
print_r(array_diff($a1,$a2))
PHP1.9--数组的更多相关文章
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...
- 探究javascript对象和数组的异同,及函数变量缓存技巧
javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...
- 编写高质量代码:改善Java程序的151个建议(第5章:数组和集合___建议75~78)
建议75:集合中的元素必须做到compareTo和equals同步 实现了Comparable接口的元素就可以排序,compareTo方法是Comparable接口要求必须实现的,它与equals方法 ...
- 了解PHP中的Array数组和foreach
1. 了解数组 PHP 中的数组实际上是一个有序映射.映射是一种把 values 关联到 keys 的类型.详细的解释可参见:PHP.net中的Array数组 . 2.例子:一般的数组 这里,我 ...
- JavaScript权威指南 - 数组
JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...
- JavaScript常见的五种数组去重的方式
▓▓▓▓▓▓ 大致介绍 JavaScript的数组去重问题在许多面试中都会遇到,现在做个总结 先来建立一个数组 var arr = [1,2,3,3,2,'我','我',34,'我的',NaN,NaN ...
- js:给定两个数组,如何判断他们的相对应下标的元素类型是一样的
题目: 给Array对象原型上添加一个sameStructureAs方法,该方法接收一个任意类型的参数,要求返回当前数组与传入参数数组(假定是)相对应下标的元素类型是否一致. 假设已经写好了Array ...
- javascript数组查重方法总结
文章参考地址:http://blog.csdn.net/chengxuyuan20100425/article/details/8497277 题目 对下列数组去重: var arr = ['aa', ...
- 掌握javascript中的最基础数据结构-----数组
这是一篇<数据结构与算法javascript描述>的读书笔记.主要梳理了关于数组的知识.部分内容及源码来自原作. 书中第一章介绍了如何配置javascript运行环境:javascript ...
- 小兔JS教程(四)-- 彻底攻略JS数组
在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...
随机推荐
- angular 级联选择
HTML: <link rel="stylesheet" href="views/tree/checkbox.css"/> <div clas ...
- opencv编译:opencv 3.4.1 编译 contrib模块,增加人脸识别
start cmake-gui select the opencv source code folder and the folder where binaries will be built (th ...
- SPOJ694 New Distinct Substrings
New Distinct Substrings 题目大意 给定一个字符串,求本质不同的子串个数 题解 SA常见思想:每一个子串都是某个后缀的前缀 考虑每一个后缀的贡献,首先他拥有n - sa[i]个( ...
- linux系统添加定时任务
http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html
- 菜鸟nginx源码剖析数据结构篇(十) 自旋锁ngx_spinlock[转]
菜鸟nginx源码剖析数据结构篇(十) 自旋锁ngx_spinlock Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.csd ...
- iPhoneX适配随笔
1.安全区域 2.NavigationBar 和 TabBar的xib示意图 两个View要相同的效果,坐标不同 UIButton *btn = [UIButton buttonWithType:UI ...
- java代码优化写法(转摘)
本文源地址:https://blog.csdn.net/syc001/article/details/72841650 可供程序利用的资源(内存.CPU时间.网络带宽等)是有限的,优化的目的就是让程序 ...
- 用DataTable填充实体类List
/// <summary> /// 用DataTable填充实体类List /// </summary> public static List<T> FillLis ...
- fastjson对Date类型的格式化
@JSONField(format="yyyy-MM-dd HH:mm:ss.SSS") private Date sendMqDate; //MQ发送时间
- spring boot项目搭建中遇到的问题
自己动手搭建一下spring boot的项目,中途遇到了几个问题,在这里记录一下! 一.关于数据库中的表设计的问题 1.设计表的时候一定要添加的两个字段created updated 创建时间与更新时 ...