我是靠谱客的博主 爱听歌高山,最近开发中收集的这篇文章主要介绍php中的数组分为哪两种类型,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

在 PHP 数组中,键名会有一个值与其相对应,即一个键/值对。

根据数组键名数据类型的不同,我们可以把 PHP 数组分为两种:

  • 以数字作为键名的称为索引数组(Indexed Array);

  • 以字符串或字符串、数字混合为键名的数组称为关联数组(Associative Array)。

1、索引数组

索引数组的下标(键名)由数字组成,默认从 0 开始,每个数字对应一个数组元素在数组中的位置,不需要特别指定,PHP 会自动为索引数组的键名赋一个整数值,然后从这个值开始自动递增。

<?php
header('content-type:text/html;charset=utf-8');   
$array=array(1,2,3,4,5,6,7,8,9,10);
var_dump($array);//打印数组
?>
登录后复制

1.png

2、关联数组

关联数组的下标(键名)由数值和字符串混合的形式组成,如果一个数组中有一个键名不是数字,那么这个数组就是关联数组。

<?php
header('content-type:text/html;charset=utf-8');   
$array=array("id"=>1,"name"=>"李华","age"=>23,"1"=>1,"id2"=>52);
var_dump($array);//打印数组
?>
登录后复制

2.png

关联数组的键名可以是任何一个整数或字符串。如果键名是一个字符串,则要给这个键名加上一个定界修饰符——单引号''或双引号""。对于索引数组,为了避免混清,最好也加上定界符。

扩展知识:索引数组和关联数组的相互转换

关联数组转索引数组

在php中,可以使用array_values()函数来将关联数组转为索引数组。

array_values($array) 函数的作用是返回数组中所有元素的值,使用起来非常简单,只有一个必选参数,就可以返回一个包含给定数组中所有值的数组,但不保留键名。被返回的数组将使用索引数组的形式,数组的索引从 0 开始且以 1 递增。

简单来说,利用该函数可以重置数组键名,将字符串或数值混乱的键名转为从0开始且以1递增的数字键名。

array_values() 函数特别适合用于数组中元素下标混乱的数组,或者用于将关联数组转化为索引数组。

<?php
$arr=array("Peter"=>65,"Harry"=>80,"John"=>78,"Clark"=>90);
var_dump($arr);
var_dump(array_values($arr));
?>
登录后复制

1.png

索引数组转关联数组

在php中,可以利用array_combine()函数来将索引数组转成关联数组。

array_combine($keys,$values)函数通过合并两个数组的方式创建了一个新数组,其中$keys数组中的元素作为了新数组的键名,$values数组的元素为作为了新数组的键值。

但需要注意的是,使用array_combine()函数创建数组时,$keys数组和$values数组中的元素个数必须要一致,这才能让键名和键值一一对应,否则就会报错并返回 FALSE。

且$keys数组不可为多维数组,否则也会报错;但$values数组可以为多维数组。

<?php
header("Content-type:text/html;charset=utf-8");
$keys=array("a","b","c","d");
$values=array("red","green","blue","yellow");
var_dump($keys);
var_dump($values);
echo "使用array_combine()合并数组后:";
var_dump(array_combine($keys,$values));
?>
登录后复制

1.png

推荐学习:《PHP视频教程》

以上就是php中的数组分为哪两种类型的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是爱听歌高山为你收集整理的php中的数组分为哪两种类型的全部内容,希望文章能够帮你解决php中的数组分为哪两种类型所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部