PHP数组详解,数组详解
程序员文章站
2022-05-10 16:28:24
...
PHP数组详解,数组详解
作为一名C++程序员,在转做PHP开发的过程中,对PHP数组产生了一些混淆,与C++数组有相似的地方,也有一些不同,下面就全面地分析一下PHP的数组及其与C++中相应数据类型的区别和联系。
数组的分类:
1、数值数组:也叫索引数组,即以数字(从0 开始)作为数组下标。相当于C++中的vector。
2、关联数组:以字符串作为数组下标。相当于C++中的map。
3、多维数组:数组中每个元素也是一个数组。其子数组中的每个元素也可以是数组。
数组的声明:
1、数值数组
a、如下例子中,会自动分配数字ID键。 $names = array("Peter","Joe","Lily"); b、如下例子中,我们人工分配数字ID键。 $names[0] = "Peter"; $names[1] = "Joe"; $names[2] = "Lily"; 可以在脚本中使用这些ID键: php $names[0] = "Peter"; $names[1] = "Joe"; $names[2] = "Lily"; echo $names[0]." and ".$names[1]." are ".$names[2]."'s neighbors"; /* 何问起 hovertree.com */ ?>
2、关联数组:
例子1 $ages = array("Peter"=>32, "Joe"=>30, "Lily"=>28); 例子2 本例与例子1相同,只是另一种创建数组的方法。 $ages["Peter"] = "32"; $ages["Joe"] = "30"; $ages["Lily"] = "28"; 在脚本中使用关联数组: php $ages["Peter"] = "32"; $ages["Joe"] = "30"; $ages["Lily"] = "28"; echo "Peter is ".$ages["Peter"]." years old."; /* 何问起 hovertree.com */ ?> 以上脚本输出: Peter is 32 years old.
3、多维数组:
在本例中,我们创建了一个带有自动分配数字ID键的多维数组: $families = array { "Griffin"=>array { "Peter", "Lois", "Megan" }, "Quagmire"=>array { "Glenn" }, "Brown"=>array { "Cleveland", "Loretta", "Junior" } }; echo "Is " . $families['Griffin'][2] . " a part of the Griffin family?"; 以上代码输出: Is Megan a part of the Griffin family?
数组遍历
1、for循环遍历 for循环只能遍历索引数组。 php $names = array("Peter","Joe","Lily"); for($id=0;$idcount