PHP创建数组的多种方法(附带实例)
如果用户有一个项目列表如汽车品牌列表,那么在单个变量中存储这些汽车品牌名称的格式如下:
$cars1="BYD"; $cars2="Chery"; $cars3="Geely";不过假如希望对变量进行遍历并找出特定值,或者需要存储 300 个汽车品牌,而不是仅存储 3 个汽车品牌,要如何解决呢?解决方法是创建数组。
数组能够在单个变量中存储多个值,并且能够通过引用下标号来访问某个值。数组是把一系列数据组织起来,形成的可操作的整体。数组的每个实体都包含键和值。
PHP 中,创建数组的方法有很多种,接下来讲解常用的几种。
PHP数组的创建
1) 以直接赋值的方式创建数组
基本语法如下:$Arrayname[<key>]=value其中,$Arrayname 表示数组名,key 表示键名,value 表示键值。键名可以省略。
【实例 1】以直接赋值的方式创建数组。
<?php $booklist[]="PHP"; $booklist[]="ASP"; $booklist[]="JSP"; ?>上述实例省略了键名,系统会使用默认的键,从 0 开始,依次类推。
【实例 2】以指定键名的方式创建数组。
<?php header("content-type:text/html;charset=utf-8"); $booklist[]="PHP"; $booklist[4]="ASP"; $booklist[]="JSP"; $booklist["名著"]="西游记"; $booklist["名著"]="水浒传"; $booklist["小说"]="人生若只如初见"; print_r($booklist); echo "<br>"; echo $booklist["名著"]."<br>"; echo $booklist[5]; ?>运行结果为:
Array
(
[0] => PHP
[4] => ASP
[5] => JSP
[名著] => 水浒传
[小说] => 人生若只如初见
)
水浒传
JSP
- 在创建数组时,键名可以指定为数字,也可以指定为字符串,还可以混合使用数字与字符串;
- 如果指定的键名是数字,则省略后边的键名时,键名会在前面键名的基础上增加 1;
- 如果指定的键名相同,则后边的键值会覆盖前边的键值。
2) 使用 Array() 函数创建数组
Array() 函数的基本语法如下:$Arrayname=Array(value1[,value2][,value3][,…]);
【实例 3】使用 Array() 函数创建数组。
<?php $booklist=Array("PHP",4=>"ASP",JSP,"名著"=>"西游记","名著"=>"水浒传","小说"=>"人生若只如初见"); ?>
3) 使用range()函数创建数组
使用 range() 函数创建一个包含指定范围内全部元素的数组,基本语法如下:Array range(mixed low,mixed high,[number step]);该函数返回数组中从 low 到 high 的全部元素,其中包含它们本身。
当 low<high 时,序列为从 low 到 high;当 low>high 时,序列为从 high 到 low。step 是一个可选参数,它的值是正值。如果指定该参数的值,它将作为元素之间的步长值;如果未指定该参数的值,step的默认值为1。
【实例 4】使用 range() 函数创建数组。
<?php $arr=range(1,10); print_r($arr); echo "<br>"; $arr1=range(1,10,3); print_r($arr1); ?>运行结果为:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
[9] => 10
)
Array
(
[0] => 1
[1] => 4
[2] => 7
[3] => 10
)
【实例 5】使用 range() 函数创建数组。
<?php $arr=range("a","h"); print_r($arr); echo "<br>"; $arr1=range("z","a",4); print_r($arr1); ?>运行结果为:
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
[4] => e
[5] => f
[6] => g
[7] => h
)
Array
(
[0] => z
[1] => v
[2] => r
[3] => n
[4] => j
[5] => f
[6] => b
)