PHP 中的数组是一种非常灵活的数据结构,可以存储多个值。PHP 数组主要分为以下几种类型:
索引数组是最常见的数组类型,使用数字作为键(索引)。索引从 0 开始。
$fruits = array("Apple", "Banana", "Cherry");
// 或者
$fruits = ["Apple", "Banana", "Cherry"];
关联数组使用字符串作为键(索引),键值对的形式存储数据。
$person = array("name" => "John", "age" => 30, "city" => "New York");
// 或者
$person = ["name" => "John", "age" => 30, "city" => "New York"];
多维数组是包含一个或多个数组的数组。可以是索引数组、关联数组或两者的混合。
$cars = array(
array("Volvo", 22, 18),
array("BMW", 15, 13),
array("Saab", 5, 2),
array("Land Rover", 17, 15)
);
PHP 数组可以同时包含索引数组和关联数组的元素。
$mixed = array(
"name" => "John",
"age" => 30,
0 => "Apple",
1 => "Banana"
);
空数组是一个不包含任何元素的数组。
$emptyArray = array();
// 或者
$emptyArray = [];
稀疏数组是指数组中某些索引未被定义或为 null
的数组。
$sparseArray = array();
$sparseArray[0] = "Apple";
$sparseArray[2] = "Banana";
PHP 数组是动态的,可以在运行时动态添加或删除元素。
$dynamicArray = [];
$dynamicArray[] = "Apple"; // 自动分配索引 0
$dynamicArray[] = "Banana"; // 自动分配索引 1
数组中的元素可以是对象。
class Car {
public $name;
public $color;
public function __construct($name, $color) {
$this->name = $name;
$this->color = $color;
}
}
$cars = array(
new Car("Volvo", "Red"),
new Car("BMW", "Blue")
);
数组中的元素也可以是数组。
$matrix = array(
array(1, 2, 3),
array(4, 5, 6),
array(7, 8, 9)
);
PHP 还提供了一些特殊的数组类型,如 SplFixedArray
,它是一个固定大小的数组,性能比普通数组更高。
$fixedArray = new SplFixedArray(3);
$fixedArray[0] = "Apple";
$fixedArray[1] = "Banana";
$fixedArray[2] = "Cherry";
PHP 数组非常灵活,支持多种类型和结构。你可以根据需求选择不同类型的数组来存储和操作数据。