PHP数组

数组总结

数组构成:数组是由一个或多个数组元素组成的
数组元素:每个数组元素由键(Key)和值(Value)构成
键:“键”为元素的识别名称,也被称为数组下标
值:“值”为元素的内容
映射:“键”和“值”之间存在
索引数组:是指键名为整数的数组。默认情况下,索引数组的键名是从0开始,并依次递增。它主要适用于利用位置(0、1、2…)来标识数组元素的情况。

关联数组:是指键名为字符串的数组。通常情况下,关联数组元素的“键”和“值”之间有一定的业务逻辑关系因此,通常适用关联数组存储一系列具有逻辑关系的变量。关联数组的“键”都是字符串,并与“值”之间具有一一对应的关系。

创建数组的方式
使用array()函数创建数组
赋值方式

数组的定义——赋值方式
使用赋值方式定义数组,实际上就是创建一个数组变量,然后使用赋值运算符直接给变量赋值
短数组定义法([])
短数组定义法([])与array()语法结构相同,只需将array()替换为[]即可

访问数组
另外,若要一次查看数组中的所有元素,则可以利用前面学习的输出语句函数print_r()和var_dump(),并且通常情况下为了使输出的函数按照一定的格式打印,查看时经常与pre标记一起使用

遍历数组
所谓遍历数组就是一次性访问数组中所有元素的操作。通常情况下,使用foreach()语句完成数组的遍历。
Forech(数组名 as 键=>值){}

删除数组
Unset($info);
在数组定义完成后,有时也需要根据实际情况去除数组的某个元素

数组联合:建立两个数组,让两个数组合为一个

数组查找
顺序查找法:是最简单的查找法,只需按照数组中元素的保存顺序,利用待查的值与数组中的元素从前往后一个一个的进行比较,直到找到目标值或查找失败

二分查找法:针对有序数组的一种查找法,它的查询效率非常高

冒泡排序
冒泡排序:是计算机科学领域中较简单的排序算法
实现原理:按照要求从小到大排序或从大到小排序,不断比较数组中相邻两个元素值,较小或较大的元素前移。冒泡排序比较的论数是数组长度减1,每轮比较的对数等于数组的长度减当前的轮数。
缺点:冒泡排序的效率低,在实际中使用较少

简单选择排序
是一种非常直观的排序算法
实现原理:从待排序的数组中选出最小或最大的一个元素与数组的第一个元素互换,接着在剩余的数组元素中选择最小的一个与数组的第二个元素互换,依次类推,直到全部待排序的数组元素排序完成。

快速排序
是对冒泡排序的一种优化
实现原理:首先选择一个基准元素,通常选择待排序数组的第一个数组元素。通过一趟排序,将要排序的数组分成两部分,其中一部分比基准元素小,另一部分比基准元素打,然后再利用同样的方法递归的排序划分出的两部分,直到将所有划分的数组排序完成

插入排序
也是冒泡排序的优化,是一种直观的简单排序算法。
实现原理:通过构建有序数组元素的存储,对未排序的元素,在已排序的数组中从最后一个元素向第一个元素遍历,找到相应位置并插入。其中待排序数组的第一个元素会被看做是一个有序的数组,从第二个至最后一个元素会被看做是一个无序数组。

数组指针
用于指向数组中的某个元素,默认情况下,指向数组的第一个元素。通过移动或改变指针的位置,可以访问数组中的任意元素。

数组元素造作函数
在操作数组过程中,经常会遇到在数组的前面或后面添加或删除元素的情况。

排序函数
对于数组排序,除了上面提到的排序方法以外,PHP还提供了内置数组排序函数,可以轻松对数组实现排序、逆向排序、按键排序等操作
sort():对数组排序(从高到低)
rsort():对数组逆向排序(从高到低)
asort():对数组进行排序并保持键值关系
ksort():对数组按照键名排序
arsort():对数组进行逆向排序保持键值关系
krsort():对数组按照键名逆向排序
shuffle():将数组元素顺序打乱
anay_multisort():对多个数组或多维数组进行排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值