阅读 97

PHP 数组

在本教程中,您将学习如何在PHP中的单个变量中存储多个值。

什么是PHP数组

数组是复杂的变量,允许我们在单个变量名下存储多个值或一组值。 假设您想要在PHP脚本中存储颜色,将颜色逐个存储在变量中可能如下所示:

示例

<?php$color1 = "Red";
$color2 = "Green";
$color3 = "Blue";echo $color1;echo "<br>";echo $color2;echo "<br>";echo $color3;?>

测试看看‹/›

但是,如果您想将国家/地区的州名或城市名存储在变量中,那么这次不只是三个就可能是一百个。 将每个城市的名称存储在单独的变量中是非常困难,糟糕且不明智的做法。 数组在这里就开始起作用了。

PHP中的数组类型

您可以创建三种类型的数组。这些是:

  • 索引数组 — 具有数字键的数组。

  • 关联数组 — 每个键都有其特定值的数组。

  • 多维数组 — 本身包含一个或多个数组的数组。

索引数组

索引数组或数字数组存储每个具有数字索引的数组元素。以下示例显示了创建索引数组的两种方法,最简单的方法是:

示例

<?php//定义一个索引数组$colors = array("Red", "Green", "Blue");// 打印数组结构print_r($colors);?>

测试看看‹/›

注意:在索引或数字数组中,将自动分配索引并从0开始,并且值可以是任何数据类型。

这等效于以下示例,其中手动分配了索引:

示例

<?php$colors[0] = "Red"; 
$colors[1] = "Green"; 
$colors[2] = "Blue"; // 打印数组结构print_r($colors); ?>

测试看看‹/›

关联数组

在关联数组中,分配给值的键可以是任意的和用户定义的字符串。在以下示例中,数组使用键而不是索引号:

示例

<?php//定义一个关联数组$ages = array("Peter"=>22, "Clark"=>32, "John"=>28);// 打印数组结构print_r($ages ); ?>

测试看看‹/›

下面的示例与前面的示例等效,但是显示了创建关联数组的另一种方式:

示例

<?php$ages["Peter"] = "22";
$ages["Clark"] = "32";
$ages["John"] = "28";// 打印数组结构print_r($ages );?>

测试看看‹/›

多维数组

多维数组是一个数组,其中每个元素也可以是一个数组,子数组中的每个元素可以是一个数组,或者进一步在其内部包含数组,依此类推。多维数组的示例如下所示:

示例

<?php//定义多维数组$contacts = array(
    array(
        "name" => "Peter Parker",
        "email" => "peterparker@mail.com",
    ),
    array(
        "name" => "Clark Kent",
        "email" => "clarkkent@mail.com",
    ),
    array(
        "name" => "Harry Potter",
        "email" => "harrypotter@mail.com",
    )
);//访问嵌套值echo "彼得.帕克的电子邮件 id 是: " . $contacts[0]["email"];?>

测试看看‹/›

查看数组的结构和值

您可以使用两个语句 var_dump()或 print_r() 之一,查看任何数组的结构和值。但是print_r()语句提供的信息稍少一些。看以下示例:

示例

<?php//定义数组$cities = array("London", "Paris", "New York");
 //显示城市数组print_r($cities);?>

测试看看‹/›

print_r() 语句提供以下输出:

Array ( [0] => London [1] => Paris [2] => New York )

此输出显示数组中每个元素的键和值。要获取更多信息,请使用以下语句:

示例

<?php//定义数组$cities = array("London", "Paris", "New York");
 //显示城市数组var_dump($cities);?>

测试看看‹/›

var_dump()语句提供以下输出:

array(3) { [0]=> string(6) "London" [1]=> string(5) "Paris" [2]=> string(8) "New York" }

除了键和值,此输出还显示每个元素的数据类型,例如6个字符的字符串。在下一章,您将学习如何对数组元素进行排序。

在循环章节中,您将学习如何遍历数组的值。


文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐