PHP学习笔记(1)数组函数
1.数组的键值操作函数:
$arr = array("小明" => 98, "小红" => 76, "小黑" => 66,);
array_values(input);//输出所有值value
array_keys(input);//输出所有键key
in_array(needle, haystack);//查找数组里有没有needle这个值
array_key_exists(key, search);//查找数组里有没有key这个键
array_flip(trans);//键值对互换
array_reverse(array);//把数组反转,从最后一个排到第一个
2.统计数组的元素和唯一性:
count(var);//返回数组中元素的数目。
array_count_values(input);//用于统计数组中所有值出现的次数。
array_unique(array);//删除数组中的重复值。
array_filter(input);//用回调函数过滤数组中的元素。
array_map(callback, arr1);//把数组中的每个值发送到用户自定义函数,返回新的值。例子是$v*$v。
3.数组的排序函数:
sort(array);//索引数组正序,只有数字,返回true或false,改变了原数组
rsort(array);//数组逆序
asort(array);//关联数组正序,按照值排序,键和值都有
arsort(array);//关联数组逆序
ksort(array);//关联数组正序,按照键排序,键和值都有
krsort(array);//关联数组逆序
array_multisort(arr);//对多个数组排序,可指定排列顺序
数组截取:
array_slice(array, offset);//从数组中取出部分值,offset起始数字,取几个值,原数组不变,返回取值的新数组
array_splice(input, offset);//从数组中移除部分值,原数组改变,第4个参数可以是个数组,加入原数组
数组合并:
array_merge(array1);//把两个数组合并成一个大数组,如果键名重复,后面的覆盖前面的
array_combine(keys, values);//把两个数组合并,第一个数组为键,第二个数组为值
数组分割与连接:
explode(delimiter, string);//把字符串拆分成数组,根据分隔符拆分,不改变原字符串
implode(glue, pieces);//把数组组合成字符串,加入分隔符
join();//implide()的别称
带有数据结构的数组函数:
array_pop(array);//从数组末尾删除一个值(出栈),并返回这个值,原数组删除了这个值
array_push(array, var);//向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。该函数等于多次调用 $array[] = $value。
array_shift(array);//删除数组中第一个元素,并返回被删除元素的值。
array_unshift(array, var);//向数组插入新元素。新数组的值将被插入到数组的开头。返回数组中元素的个数。
其他函数:
array_rand(input);//从数组中随机选出一个或多个元素,并返回。第二个参数用来确定要选出几个元素。但只能是前面的数字小,后面的数字大
shuffle(array);//把数组元素打乱重排,关联数组的键名清除!返回true或false
array_sum(array);//返回数组中所有值的和。
array_product(array);//计算并返回数组的乘积。
range(low, high);//创建一个数组,包含从 low 到 high (包含 low 和 high)之间的整数或字符。如果 high 比 low 小,则返回反序的数组。第三个参数是步长
练习:做一个字母数字混合的4位数随机验证码
PHP学习笔记(1)数组函数的更多相关文章
- PHP学习笔记之数组篇
摘要:其实PHP中的数组和JavaScript中的数组很相似,就是一系列键值对的集合.... 转载请注明来源:PHP学习笔记之数组篇 一.如何定义数组:在PHP中创建数组主要有两种方式,下面就让我 ...
- Python学习笔记之常用函数及说明
Python学习笔记之常用函数及说明 俗话说"好记性不如烂笔头",老祖宗们几千年总结出来的东西还是有些道理的,所以,常用的东西也要记下来,不记不知道,一记吓一跳,乖乖,函数咋这么多 ...
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
- IOS学习笔记06---C语言函数
IOS学习笔记06---C语言函数 -------------------------------------------- qq交流群:创梦技术交流群:251572072 ...
- JavaScript学习笔记之数组(二)
JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...
- Typescript 学习笔记三:函数
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- ES6学习笔记<三> 生成器函数与yield
为什么要把这个内容拿出来单独做一篇学习笔记? 生成器函数比较重要,相对不是很容易理解,单独做一篇笔记详细聊一聊生成器函数. 标题为什么是生成器函数与yield? 生成器函数类似其他服务器端语音中的接口 ...
- OpenCV 学习笔记03 findContours函数
opencv-python 4.0.1 1 函数释义 词义:发现轮廓! 从二进制图像中查找轮廓(Finds contours in a binary image):轮廓是形状分析和物体检测和识别的 ...
- canvas学习笔记、小函数整理
http://bbs.csdn.net/topics/391493648 canvas实例分享 2016-3-16 http://bbs.csdn.net/topics/390582151 html5 ...
- Go语言学习笔记七: 函数
Go语言学习笔记七: 函数 Go语言有函数还有方法,神奇不.这有点像python了. 函数定义 func function_name( [parameter list] ) [return_types ...
随机推荐
- iOS:对GCD中 同步、异步、并行、串行的见解
1.GCD-同步执行多线程时 GCD中不管向什么类型的队列加同步任务,实际上都会加到当前线程中(一般为主线程). 2.GCD-异步执行多线程时 GCD中不管向什么类 ...
- screen space shadowmap unity
unity用到了screen space shadow map 1.camera 在light pos 生成depth1 2.screen space depth2 3.根据depth1 depth2 ...
- Office WPS如何让页与页之间不相互影响
在一个页面结束的位置点击插入-分页符,完了之后测试按回车下一页的内容有没有跟着往下跑,如果还是跟着往下跑的,再插入一次分页符,一般插入多次之后就不会跟着跑了,但是插的太多会有空白页面 测试按回车, ...
- PHP数组问题
转换为数组 对于任意 integer , float , string , boolean 和 resource 类型,如果将一个值转换为数组,将得到一个仅有一个元素的数组,其下标为 0,该元素即为此 ...
- iOS12适配指南
1.重复文件报错 build Phases-> 删除多余的info.plist 2.library not found for -lstdc++ 苹果在XCode10和iOS12中移除了libs ...
- Android Studio修改项目名和包名
为了提高开发效率,有时候需要使用现有的一些开源项目,记录一下自己修改项目名和包名的方法. 1.首先,修改包名(清单文件里找), ①展开所有包 ②选中想要修改的包,shift+F6(也可右键Refact ...
- 算法笔记_103:蓝桥杯练习 算法提高 金明的预算方案(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些 ...
- Android 开发之使用Eclipse Debug调试详解(转)
转自 http://blog.csdn.net/xys289187120/article/details/6636331 1.在程序中添加一个断点 如果所示:在Eclipse中添加了一个程序断点 在E ...
- arm-linux内核start_kernel之前启动分析(1)-接过bootloader的衣钵
前段时间移植uboot细致研究过uboot启动过程,近期耐不住寂寞.想对kernel下手. Uboot启动过程分析博文连接例如以下: http://blog.csdn.net/skyflying201 ...
- jboss 的debug启动4法
http://xo-tobacoo.iteye.com/blog/684946方式一: 使用myeclipse,全自动化,不再赘述 方式二: eclipse下使用server工具,部署后使用debug ...