温习下基础PHP数组简单操作
1.数字索引数组
1.1创建一个数组
php中最常用的两个类型是:数组,字符串。数组也分为两种,一种是数字索引,一种是关键是索引,关键字索引有点像python中字典的意思.
数字索引类型的数组的创建方法
$products = array( 'Tires', 'Oil', 'Spark Plugs' );
即使一个数组不存在,也可以直接对数组进行赋值操作,自然就产生了一个数组,例如下面这个等同于上面
$products[0] = 'Tires'; $products[1] = 'Oil'; $products[2] = 'Spark Plugs';
1.2访问数组元素
访问的时候用下标来索引。
echo $products[0];
1.3使用循环访问数组
循环访问数组有for和foreach,一个是用在数字索引数组中,一个是用在关键字数组索引中
for($i=0; $i<3; $i++) { echo $products[$i]; }
2.非数字索引数组
2.1创建一个数组
创建一个关键字索引数组
$prices = array('Tires'=>100, 'Oil'=>10, 'Spark Plug'=>4);
用下面这个也是等价的
$prices['Tires'] = 100; $prices['Oil'] = 10; $prices['Spark Plugs'] = 4;
2.2访问数组元素
访问的时候把数字下标改成关键字即可
echo $prices['Tires'];
2.3使用循环访问数组
用循环来处理关键字数组的时候有三种方法。foreach或list()或each()
先看foreach:
foreach ($prices as $key => $value) { echo $key."-".$value."<br />"; } foreach ($prices as $value) { echo $value }
第一个foreach中把数组 p r i c e s 里 面 的 元 素 按 照 一 组 一 组 分 开 , 然 后 把 美 一 组 中 的 关 键 和 值 分 别 赋 值 给 prices里面的元素按照一组一组分开,然后把美一组中的关键和值分别赋值给 prices里面的元素按照一组一组分开,然后把美一组中的关键和值分别赋值给key和 v a l u e ; 第 二 个 是 默 认 把 值 赋 值 给 变 量 value;第二个是默认把值赋值给变量 value;第二个是默认把值赋值给变量value
再看each():
while ($element = each($prices)){ echo $element['key'].'-'.$element['value']."<br />"; }
最后看list():
while (list($product,$price) = each($prices)) { echo "$product - $price<br />"; }
list()只不过把
each()传进来的一对键值对分别赋值给list().
以上两种不常用
3.数组操作符
数组只有一个联合(+)操作符
a
+
a+
a+b:数组
b
被
附
加
到
b被附加到
b被附加到a中,但是任何关键字相同的元素将不会被添加,相当已一个集合,集合是不允许重复的。
4.多维数组
二维数组就是一个二位表。举个二位数组的例子,其他的也类似:
$products = array( array('TIR', 'Tires',100), array('OIL', 'Oil', 10), array('SPK', 'Spark Plugs', 4) )
调用方法是:
$products[0][1];
使用for循环的一个方法是:
for ($row=0;$row<3;$row++){ for($col=0;$col<3;$col++){ echo $products[$row][$col]; } echo "<br />"; }
5.数组排序
5.1三种排序函数sort(),asort(),ksort()
sort()函数是对数字索引数组进行排序的。按照字母升序进行排列的,大写字母在小写字母前面,接收参数为数组,还有一个可选参数,这个参数的值是:SORT_REGULAR(默认),
SORT_NUMERIC,SORT_STRING。作用是按照数字和字符顺序来排序。
sourt($array);
asort()和ksort()分别是对关键字数组进行按照值和关键字进行排序。
asort()是对每个元素的值进行排序,ksort()是对元素关键字进行排序。
5.2反向排序
反向排序是将前面的三个函数的排序结果进行反序,从函数名字上来看,只需要在函数名上加一个r即可。
sort(),asort(),ksort()的反序分别对应:rsort(),arsort(),krsort().
多维数组的排序是需要自己设置比较函数的。
6.数组函数
每一个数组都有一个内部的指针来指向当前使用的是数组中的哪一个元素。
each()依次返回数组中的元素。
current()返回当前数组指针指向的一个元素,例如当对一个数组进行循环操作,在调用三个元素之后break,那么当前指针指向的就是第4个元素了,此时如果调用current(),那么就返回数组的第四个元素了。
reset()返回数组的第一个元素。
end()返回数组的最后一个元素。
6.1操作数组中的每一个元素
array_walk($array, func,agrv),以相同的方式修改数组中的每一个元素。
接收两个参数,第三个为可选:
第一个参数是要操作的数组,第二个参数是操作的方法,可以是自定义的一个函数,第三个参数是函数需要传入的参数。
6.2统计数组元素个数
count()和 sizeof()函数的作用和使用方法是一样的,都是统计数组里面元素的个数。没有区别
array_count_values()这个函数会统计每个特定的值在数组中出现的次数。
以上内容希望帮助到大家,更多PHP大厂PDF,PHP进阶架构视频资料,PHP精彩好文可以微信搜索:PHP开源社区
- PHP基础笔记【3.1】转发 数组操作
- PHP基础数组操作(二)
- PHP基础笔记【3】数组操作
- php数组简单操作
- php数组简单操作
- PHP基础数组操作(一)
- 【php基础】php数组常用操作函数
- c基础第7课-数组及简单字符串操作
- PHP数组操作简单案例分析
- php简单数组操作,注意array_values()是重构数组
- PHP基础巩固【数组操作】
- php基础之字符串简单操作
- php最全基础,数组,函数,超全局变量,时间,回话,文件,php操作mysql
- PHP数组操作简单案例分析
- PHP备忘录:数组操作中容易被忽略的基础
- 【PHP基础知识】——PHP数组操作详解
- php扩展开发笔记(5)一些数组操作相关的宏和简单示例
- PHP基础学习之数组使用要点
- PHP基础温习之echo print printf sprintf print_r var_dump的用法与区别
- Django基础-----ORM简介、数据库中数据操作及简单的一对多模型