PHP 数组基础
数组是 PHP 中最常用的数据结构之一,它可以存储多个值,并通过键(key)来访问这些值。PHP 的数组非常灵活,可以同时包含不同类型的数据。
数组类型
索引数组
索引数组使用数字作为键,从 0 开始:
$fruits = ["苹果", "香蕉", "橙子"];// 或者使用 array() 语法$fruits = array("苹果", "香蕉", "橙子");
// 访问数组元素echo $fruits[0]; // 输出:苹果
关联数组
关联数组使用字符串作为键:
$person = [ "name" => "张三", "age" => 25, "city" => "北京"];
// 访问数组元素echo $person["name"]; // 输出:张三
常用数组操作
添加元素
// 添加到索引数组末尾$fruits[] = "葡萄";
// 添加到关联数组
删除元素
// 删除特定元素unset($fruits[1]);
// 清空整个数组$fruits = array();
数组函数
- 计数
$count = count($fruits); // 获取数组长度
- 排序
// 升序排序sort($fruits);
// 降序排序rsort($fruits);
// 关联数组按值排序asort($person);
// 关联数组按键排序ksort($person);
- 查找
// 检查元素是否存在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]
实践练习
- 创建一个包含你喜欢的书籍的关联数组,包含书名、作者和出版年份。
- 使用数组函数对书籍按出版年份排序。
- 使用 foreach 循环显示所有书籍信息。
- 实现一个函数,找出数组中的最大值和最小值。
通过这些练习,你将更好地掌握 PHP 数组的使用方法,为后续的 PHP 开发打下坚实的基础。