首页 > 代码库 > 2017.7.22
2017.7.22
1、PHP中的数组简介
数组能够在一个变量名中存储一个或多个值。
在 PHP 中, array() 函数用于创建数组:array();
数组能够在单一变量名中存储许多值,并且您能够通过引用下标号来访问某个值。
例如:
<?php $cars=array("Volvo","BMW","SAAB"); echo “$cars”; ?>
//也可以直接echo "$cars[1]",用于打印输出BMW这个值。
在 PHP 中,有三种数组类型:
- 索引数组 - 带有数字索引的数组,引用时下标为数字,$a=$cars[1]。
- 关联数组 - 带有指定键的数组,引用时下标为键值,$a=$carp["user"]。
- 多维数组 - 包含一个或多个数组的数组。如果一维数组的值也是一个数组那么它就是一个二维数组了。
PHP 索引数组
有两种创建索引数组的方法:
索引是自动分配的(索引从 0 开始):
$cars=array("Volvo","BMW","SAAB");
或者也可以手动分配索引:
$cars[0]="Volvo";$cars[1]="BMW";$cars[2]="SAAB";
获得数组的长度 - count() 函数:echo $arrayLength=count($cars);
PHP 关联数组
关联数组是使用您分配给数组的指定键的数组。
有两种创建关联数组的方法:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");//Joe即为键值
或者:
$age[‘Peter‘]="35"; $age[‘Ben‘]="37"; $age[‘Joe‘]="43";
随后可以在脚本中使用指定键:
<?php $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); echo "Peter is " . $age[‘Peter‘] . " years old."; ?>
遍历索引数组
如需遍历并输出索引数组的所有值,您可以使用 for 循环,就像这样:
<?php $cars=array("Volvo","BMW","SAAB"); $arrlength=count($cars); for($x=0;$x<$arrlength;$x++) { echo $cars[$x]; echo "<br>"; } ?>
遍历关联数组
如需遍历并输出关联数组的所有值,您可以使用 foreach 循环,就像这样:
<?php $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); foreach($age as $x=>$x_value) { echo "Key=" . $x . ", Value="http://www.mamicode.com/. $x_value; echo "<br>"; } ?>
//其中$age为要遍历的数组名,$x用来存储关联数组的键值,键值可以为下标值或者是字符串,$x_value为存储所取出的当前元素的数值。此过程,把当前元素的数值赋给$x_value,当前元素的键值也会在每次循环中被赋给变量$x。
PHP多维数组
一个数组中的值可以是另一个数组,另一个数组的值也可以是一个数组。依照这种方式,我们可以创建二维或者三维数组。
注释:数组的维度指示您需要选择元素的索引数。对于二维数组,您需要两个索引来选取元素,对于三维数组,您需要三个索引来选取元素。
例如二维数组:
<?php // 二维数组: $cars = array ( array("Volvo",100,96), array("BMW",60,59), array("Toyota",110,100) ); print_r($cars); ?>
其运行结果如下:
Array ( [0] => Array ( [0] => Volvo [1] => 100 [2] => 96 ) [1] => Array ( [0] => BMW [1] => 60 [2] => 59 ) [2] => Array ( [0] => Toyota [1] => 110 [2] => 100 ) )
创建一个自动分配 ID 键的多维数组:
<?php $sites = array ( "runoob"=>array ( "菜鸟教程", "http://www.runoob.com" ), "google"=>array ( "Google 搜索", "http://www.google.com" ), "taobao"=>array ( "淘宝", "http://www.taobao.com" ) ); print("<pre>"); // 格式化输出数组 print_r($sites); print("</pre>"); ?>
Array ( [runoob] => Array ( [0] => 菜鸟教程 [1] => “http://www.runnob.com" ) ......以下类似。 )
echo $sites[‘taobao‘][0] . ‘地址为:‘ . $sites[‘taobao‘][1];
上面的代码将输出:淘宝地址为:http://www.taobao.com
2017.7.22
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。