PHP和PERL、VB不同,其只有“数组”,没有单独的“关联数组”类型,实际上PHP的所有数组都是关联数组,当没有指定键值的时候,键值为0、1、2……
php中定义数组的方法:
PHP定义数组的格式
数组名=array();
如:$aa=array();//这样就定义了一个数组,
之后给元素赋值:
$aa[0]="9016";
$aa[1]="9017";
$aa[2]="9018";
PHP输出数组的方法:
foreach($aa as $val)
{echo$val;}
也可以在定义数组时直接赋值
$aa=array(0=>"9016",1=>"9017";2=>"9018");
PHP的数组还可以用字符做下标,不一定要数字
$aa["name"]="Joan";
$aa["num"]="9018";
$aa["email"]="abc@abccom";
也可以这样
$aa=array("name"=>"joan","num"=>"9018","email"=>"abc@abccom");
将一个一维数组的元素也定义为数组,就是一个二维数组,
$aa=array(0=>"a1",1=>"a2");
$bb=array(0=>"b1",1=>"b2");
$cc=array(0=>$aa;1=>$bb);此时,$cc[0]也是一个数组,$cc[1]也是一个数组,$cc就是一个二维数组。
同理,三维,四维数组也可以继续定义下去。
数组的元素不仅于数字和字符串,可以是类的对象。
数组能够在单独的变量名中存储一个或多个值。
实例
数组在单个变量中存储多个值:
<php
$cars=array("Volvo","BMW","SAAB");
echo
"I
like
"
$cars[0]
",
"
$cars[1]
"
and
"
$cars[2]
"";
>
什么是数组?
数组是特殊的变量,它可以同时保存一个以上的值。
如果您有一个项目列表(例如汽车品牌列表),在单个变量中存储这些品牌名称是这样的:
$cars1="Volvo";
$cars2="BMW";
$cars3="SAAB";
不过,假如您希望对变量进行遍历并找出特定的那个值?或者如果您需要存储
300
个汽车品牌,而不是
3
个呢?
解决方法是创建数组!
数组能够在单一变量名中存储许多值,并且您能够通过引用下标号来访问某个值。
在
PHP
中创建数组
在
PHP
中,
array()
函数用于创建数组:
array();
在
PHP
中,有三种数组类型:
索引数组
-
带有数字索引的数组
关联数组
-
带有指定键的数组
多维数组
-
包含一个或多个数组的数组
PHP
索引数组
有两种创建索引数组的方法:
索引是自动分配的(索引从
0
开始):
$cars=array("Volvo","BMW","SAAB");
或者也可以手动分配索引:
$cars[0]="Volvo";
$cars[1]="BMW";
$cars[2]="SAAB";
下面的例子创建名为
$cars
的索引数组,为其分配三个元素,然后输出包含数组值的一段文本:
实例
<php
$cars=array("Volvo","BMW","SAAB");
echo
"I
like
"
$cars[0]
",
"
$cars[1]
"
and
"
$cars[2]
"";
>
获得数组的长度
-
count()
函数
count()
函数用于返回数组的长度(元素数):
实例
<php
$cars=array("Volvo","BMW","SAAB");
echo
count($cars);
>
遍历索引数组
如需遍历并输出索引数组的所有值,您可以使用
for
循环,就像这样:
实例
<php
$cars=array("Volvo","BMW","SAAB");
$arrlength=count($cars);
for($x=0;$x<$arrlength;$x++)
{
echo
$cars[$x];
echo
"<br>";
}
>
PHP
关联数组
关联数组是使用您分配给数组的指定键的数组。
有两种创建关联数组的方法:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
或者:
$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";
>
遍历关联数组
如需遍历并输出关联数组的所有值,您可以使用
foreach
循环,就像这样:
实例
<php
$age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");
foreach($age
as
$x=>$x_value)
{
echo
"Key="
$x
",
Value="
$x_value;
echo
"<br>";
}
>
对于索引数组,php还有提供了另外一个内置函数,能够重置数组索引 array_merge($arr) ,当array_merge()只传入一个参数且键名是整数,返回该数组,其键名以0开始进行重新索引。
其中PHP中的数组实际上是一个有序映射。映射是一种把values关联到keys的类型。换言之,数组是特殊的变量,可以同时保存一个以上的值。
在PHP中数组类型有三种:索引数组(带有数字索引的数组),关联数组(带有指定键的数组),多维数组(包含一个或多个数组的数组)。
扩展资料:
注意事项:
1、两个相同的索引数组,同时执行,后面的会把前面的覆盖掉。
2、在php中 索引数组的下标可以不连续。
3、如果两个下标是空会自动增加。
4、数组的自动增长下标,默认是从0开始的,自动增长的都是出现过的最大值加1。
5、关联数组不会影响到索引数组的排序规则,就算是索引数组是负数 也不会影响,最大值+1。
参考资料来源:百度百科-索引数组
参考资料来源:百度百科-php数组
都可以用来访问数组无素,键值就是可读性强,在编写程序里,可根据需要选择是键值,还是索引值,如果是自定义数组且有一些意义上的标识和区分,就用键值,如果是数据库取出来的记录数组,本来就是系统自动生成的,这个时间用索引值更好
以上就是关于php怎么把关联数组转成索引数组全部的内容,包括:php怎么把关联数组转成索引数组、php数组的基本语法 : PHP 数组、php 数组索引值如何重新从0开始递增等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)