下标:数组中的识别名称 也就是字符串或整数在数组中的代号
数组中有几个索引值就被称为几维数组。
索引值:索引是对数据库表中一列或多列的值进行排序的一种结构。
数组分类
在PHP数组被分为两种:
索引数组:索引(indexed)索引值是整数,以0开始,当通过位置来标识东西时用索引数组。
关联数组:关联(associative)关联以字符串做索引值,索引值为列名,用语访问列的数据。
数组通常用赋值的方式
一般情况下数组赋值有两种方式:
$a[1]="dsadsadsa";
$b[2]="dsadsadsad";
使用array函数:
$a=array("dsads","dsadsa",321312);
一维数组:数组的索引值(下标)只有一个的时候称之为一维数组。
数组直接赋值的格式:
$数组变量名[索引值]=资料内容;
注意:索引值可以是字符串也可以是整数 但是1与“1”是不同的 它们一个属于整数一个属于字符串。
同名没有给予索引值的数组是按照顺序排列的。
实例:
<?php
$a=array(1,2,3,4,5,6);
$b=array("one", "two", "three");
$c=array(0=>"aaa",1=>"bbb",2=>"ccc");
$d=array("aaa",6=>"bbb","ccc");
$e=array("name"=>"zhang", "age"=>20);
?>
二维数组
多维数组的格式:
$a[0][]="dsadas";
$a[0][]="dsadsa"; 这组是$a下的0索引值下的1和2
如果用array函数声明格式如下:
$a=array("dsadsa","dsadas",21,array("dsadsa","dsadas"));
数组的遍历
foreach循环结构:
foreach 仅用与数组的循环 两种格式
foreach(array_exprssion(数组表达) as $value);
foreach(array_exprssion(数组表达) as $key=>$value);
第一种格式遍历给定了array_exprssion数组。每一次循环中当前的值都被赋给我$calue,并且数组内部的指针向前移动一步。
第二种格式做同样的事,只除了当前单元的键值也会在每次循环中被赋给变量 $key。
当 foreach 开始执行时,数组内部的指针会自动指向第一个单元。此外注意foreach 所操作的是指定数组的一个拷贝,而不是该数组本身
$arr=array(10,20,30,40,50,60);
foreach($arr as $k=>$v){
echo "$k=>$v<br>";
}
输出结果:0=>10 1=>20 2=>30 3=>40 4=>50 5=>60//下标=>整数
联合使用list(),each()和while循环
each():
$arr=array(1,2,3,4,5);
$a=each($arr);