
数组
数组是一种数据结构, 数组能够在单独的变量名中存储一个或多个值。例如如果你想储存 100 个数字你可以定义一个数组长度为 100 的变量从而代替定义100个变量。
有三种不同类型的数组, 每一个数组的值可以通过一个被称为数组索引 ID 键来访问。
- 数字数组 -数组以一个数字作为索引。值在线性中存储和访问。
- 关联数组 -数组以字符串作为索引。这个数组存储元素值与键值不是一个严格的线性索引顺序。
- 多维数组 -包含一个或多个数组,数组值可以使用多个索引访问
注意:内置数组函数给出了很多函数参考在 PHP 数组函数库里。
索引数组
这些数组可以存储数字、字符串和任何对象但是他们将数字作为索引。默认情况下,数组索引从 0 开始。
例子
下面的例子显示了如何创建和访问一个索引数组。
在这里我们使用array()函数创建数组。这个函数在函数参考中有说明
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<html> <body> <?php /* First method to create array. */ $numbers = array( 1, 2, 3, 4, 5); foreach( $numbers as $value ) { echo "Value is $value <br />"; } /* Second method to create array. */ $numbers[0] = "one"; $numbers[1] = "two"; $numbers[2] = "three"; $numbers[3] = "four"; $numbers[4] = "five"; foreach( $numbers as $value ) { echo "Value is $value <br />"; } ?> </body> </html> |
上述代码将会输出以下代码:
1 2 3 4 5 6 7 8 9 10 |
Value is 1 Value is 2 Value is 3 Value is 4 Value is 5 Value is one Value is two Value is three Value is four Value is five |
关联数组
数值数组和关联数组功能非常的相似,他们只是有不同的索引。关联数组将字符串作为索引,这样您就可以建立一个强大的键和值的结构体系。
可以将员工的工资存储在一个数组,用数字索引定义数组并不是最好的选择。相反,我们可以使用员工的名字作为关联数组的键,将工资作为键的值。
注意: 不要使关联数组在双引号内,否则打印它不会返回任何值。
例子
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
<html> <body> <?php /* First method to associate create array. */ $salaries = array( "mohammad" => 2000, "qadir" => 1000, "zara" => 500 ); echo "Salary of mohammad is ". $salaries['mohammad'] . "<br />"; echo "Salary of qadir is ". $salaries['qadir']. "<br />"; echo "Salary of zara is ". $salaries['zara']. "<br />"; /* Second method to create array. */ $salaries['mohammad'] = "high"; $salaries['qadir'] = "medium"; $salaries['zara'] = "low"; echo "Salary of mohammad is ". $salaries['mohammad'] . "<br />"; echo "Salary of qadir is ". $salaries['qadir']. "<br />"; echo "Salary of zara is ". $salaries['zara']. "<br />"; ?> </body> </html> |
上述代码将会输出以下代码:
1 2 3 4 5 6 |
Salary of mohammad is 2000 Salary of qadir is 1000 Salary of zara is 500 Salary of mohammad is high Salary of qadir is medium Salary of zara is low |
多维数组
在多维数组中,主数组中的每个元素也是一个数组。在子数组中的每个元素也可以是数组等等,多维数组中的值是使用多个索引访问。
例子
在这个示例中,我们创建了一个二维数组在在三个主题中存储三个学生的标志:
这个例子是一个关联数组,您可以以相同的方式创建数值数组。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
<html> <body> <?php $marks = array( "mohammad" => array ( "physics" => 35, "maths" => 30, "chemistry" => 3 ), "qadir" => array ( "physics" => 30, "maths" => 32, "chemistry" => 29 ), "zara" => array ( "physics" => 31, "maths" => 22, "chemistry" => 39 ) ); /* Accessing multi-dimensional array values */ echo "Marks for mohammad in physics : " ; echo $marks['mohammad']['physics'] . "<br />"; echo "Marks for qadir in maths : "; echo $marks['qadir']['maths'] . "<br />"; echo "Marks for zara in chemistry : " ; echo $marks['zara']['chemistry'] . "<br />"; ?> </body> </html> |
上述代码将会输出以下代码:
1 2 3 |
Marks for mohammad in physics : 35 Marks for qadir in maths : 32 Marks for zara in chemistry : 39 |
解释各种 PHP 数组函数?
数组函数有很多,都是PHP核心的一部分:
数组函数 | 描述 |
array() | 创建一个数组。 |
array_diff() | 比较数组并返回值的差异。 |
array_keys() | 返回数组的所有键。 |
array_reverse() | 反转数组。 |
array_search() | 搜索一个值并返回相应的键。 |
array_slice() | 返回数组的特定部分。 |
array_sum() | 对数组的所有值求和。 |
count() | 数组的元素数。 |
在PHP 手册页上查看更多功能。
索引数组和关联数组的区别
索引数组 | 关联数组 |
有数字键或索引。 | 每个键都有其值。 |
索引从 0 开始并自动分配。 | 键是手动分配的,也可以是字符串。 |
例子,$fruits = array(“orange”, “apple”, banana); 在这里,橙色是 $fruits[0],苹果是 $fruits[1],香蕉是 $fruits[2] |
例子,$empdetails = array(“Sam”=>1200, “Mike”=>1201, “Mac”=>1202); 在这里,可以访问各个值,$empdetails[“Sam”] = “1200”; 同样,其他 |
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!