为什么引入数组
使用标量数据类型定义的变量只能存储单个“数据”,仅依靠标量数据类型远不能解决现实生活中的一些常见问题,例如一个设置个人信息的页面
数组的分类(一维数组、二维数组、多维数组)
直接将变量声明为数组元素,一个变量声明为一个数组元素有三种方法:
第一种方法:不指定数组元素的“键”
示例程序:<?php
$charcters[] = "homour";
$charcters[] ="optimism";
print_r($characters);
?>
第二种方法:将数组元素的“键”指定为某个整数
示例程序: <?php
$interests[2] ="music";
$interests[5] ="movie";
$interests[1] ="computer";
$interests[] ="software";
print_r($interests);
?>
第三种方法:将数组元素的“键”指定为某个字符串
示例程序: <?php
$colors["red"]= "red";
$colors["green"]="green";
$colors[3] ="white";
$colors[] ="blue";
print_r($colors);
?>
创建数组注意事项:
1.如果数组元素中的“键”是一个浮点数,则“键”将被强制转换为整数(例如浮点数8.0将被强制转换为整数8);如果“键”是TRUE或FALSE,则“键”将被强制转换为整数1或0。
2.如果数组元素中的“键”是一个字符串,且该字符串完全符合整数格式时,数组元素的“键”将被强制转换为整数(例如"9" 将被强制转换为整数9)。
3.由于数组元素中的“键”唯一标识一个元素,因此数组中元素的“键”不能相等(使用==比较)。如果两个数组元素的“键”相等,“键”对应的“值”将被覆盖。
4.不要在array()语言结构中使用诸如“red=>"red" ”键值对的方式创建数组元素,也不要使用诸如$colors[red]= “red”的赋值语句的方式创建数组元素,否则程序的可读性及运行效率将大打折扣。
二维数组的创建
二维数组的创建方法和一维数组的创建方法相同。
方法一:直接将变量声明为二维数组
方法二:使用array()语言结构创建二维数组
<?php
$students["2010001"]=
array("studentNo">="2010001","studentName">="张三","studentSex">="男");
$students["2010002"]=
array("studentNo">="2010002","studentName">="李四","studentSex">="女");
$students["2010003"]=
array("studentNo">="2010003","studentName">="王五","studentSex">="男");
$students["2010004"]=
array("studentNo">="2010004","studentName">="马六","studentSex">="女");
print_r($students);
?>
二维数组元素“值”的访问
二维数组中存在两个 “ 键 ” ,因此访问数组元素的 “ 值 ” 时需要指定这两个 “ 键 ” 。例如: $students["2010001"][" studentName "] 对应的值是 " 张三 " ,其中第一个键 "2010001" 用于指定二维数组 $students 中的某一 “ 行 ” ,第二个键 " studentName " 用于指定二维数组 $students 的该 “ 行 ” 的某一 “ 列 ” 。只使用第一个 “ 键 ” 访问数组时,访问的是二维数组中的某一 “ 行 ” ,该行是一个一维数组(例如 $students["2010001"] 对应的值是数组