logo
PHP 入门

PHP 数组基础

数组是 PHP 中最常用的数据结构之一,它可以存储多个值,并通过键(key)来访问这些值。PHP 的数组非常灵活,可以同时包含不同类型的数据。

数组类型

索引数组

索引数组使用数字作为键,从 0 开始:

$fruits = ["苹果", "香蕉", "橙子"];
// 或者使用 array() 语法
$fruits = array("苹果", "香蕉", "橙子");
// 访问数组元素
echo $fruits[0]; // 输出:苹果

关联数组

关联数组使用字符串作为键:

$person = [
"name" => "张三",
"age" => 25,
"city" => "北京"
];
// 访问数组元素
echo $person["name"]; // 输出:张三

常用数组操作

添加元素

// 添加到索引数组末尾
$fruits[] = "葡萄";
// 添加到关联数组
$person["email"] = "[email protected]";

删除元素

// 删除特定元素
unset($fruits[1]);
// 清空整个数组
$fruits = array();

数组函数

  1. 计数
$count = count($fruits); // 获取数组长度
  1. 排序
// 升序排序
sort($fruits);
// 降序排序
rsort($fruits);
// 关联数组按值排序
asort($person);
// 关联数组按键排序
ksort($person);
  1. 查找
// 检查元素是否存在
if (in_array("苹果", $fruits)) {
echo "找到了苹果";
}
// 查找元素的键
$key = array_search("苹果", $fruits);

数组遍历

foreach 循环

// 遍历索引数组
foreach ($fruits as $fruit) {
echo $fruit . "\n";
}
// 遍历关联数组
foreach ($person as $key => $value) {
echo "$key: $value\n";
}

for 循环(适用于索引数组)

for ($i = 0; $i < count($fruits); $i++) {
echo $fruits[$i] . "\n";
}

数组操作实例

合并数组

$array1 = [1, 2, 3];
$array2 = [4, 5, 6];
$result = array_merge($array1, $array2);
// 结果:[1, 2, 3, 4, 5, 6]

数组过滤

$numbers = [1, 2, 3, 4, 5, 6];
$evenNumbers = array_filter($numbers, function($n) {
return $n % 2 == 0;
});
// 结果:[2, 4, 6]

数组映射

$numbers = [1, 2, 3, 4, 5];
$doubled = array_map(function($n) {
return $n * 2;
}, $numbers);
// 结果:[2, 4, 6, 8, 10]

实践练习

  1. 创建一个包含你喜欢的书籍的关联数组,包含书名、作者和出版年份。
  2. 使用数组函数对书籍按出版年份排序。
  3. 使用 foreach 循环显示所有书籍信息。
  4. 实现一个函数,找出数组中的最大值和最小值。

通过这些练习,你将更好地掌握 PHP 数组的使用方法,为后续的 PHP 开发打下坚实的基础。