VuePressVuePress
首页
  • 基础
  • UI
  • JavaScript
  • CSS
  • postcss
  • Vue3
  • Vue的设计与实现
  • 前端常用插件
  • PHP
  • Laravel
  • Linux
  • 线性代数
Category
AI
jiyun
Timeline
首页
  • 基础
  • UI
  • JavaScript
  • CSS
  • postcss
  • Vue3
  • Vue的设计与实现
  • 前端常用插件
  • PHP
  • Laravel
  • Linux
  • 线性代数
Category
AI
jiyun
Timeline
  • 基础知识

    • 基础语法
    • 面向对象
    • new static
    • 反射
    • ReflectionClass
    • 类型转换
    • 运算符

      • 安全访问运算符
    • 数组的基本操作
      • 1. 创建数组
      • 2. 访问数组元素
      • 3. 修改数组元素
      • 4. 添加数组元素
      • 5. 删除数组元素
      • 6. 遍历数组
      • 7. 数组函数
      • 8. 示例代码
  • 类和对象

    • 类属性的默认值
    • 静态类
    • 静态类OR动态类
    • implements 关键字
    • 枚举

在 PHP 中,数组是一种非常常用的数据结构,PHP 提供了丰富的数组操作函数。以下是一些常见的数组操作方法和示例:

1. 创建数组

  • 索引数组(Indexed Array)
    $array = array(1, 2, 3, 4, 5);
    // 也可以使用短数组语法
    $array = [1, 2, 3, 4, 5]; 
    
  • 关联数组(Associative Array)
    $assoc_array = array("name" => "John", "age" => 30, "city" => "New York");
    // 也可以使用短数组语法
    $assoc_array = ["name" => "John", "age" => 30, "city" => "New York"]; 
    

2. 访问数组元素

echo $array[0]; // 输出 1
echo $assoc_array["name"]; // 输出 John

3. 修改数组元素

$array[0] = 10;
$assoc_array["name"] = "Jane";

4. 添加数组元素

  • 使用 [] 运算符
    // 向索引数组添加元素
    $array = [1, 2, 3];
    $array[] = 4; // 添加元素 4 到数组末尾
    // 输出: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
    print_r($array); 
    
    //向关联数组添加元素
    $assoc_array = ["name" => "John", "age" => 30];
    // 添加键值对 "city" => "New York"
    $assoc_array["city"] = "New York"; 
    // 输出: Array ( [name] => John [age] => 30 [city] => New York )
    print_r($assoc_array); 
    
  • 使用 array_push 函数
    • 向索引数组添加一个或多个元素
      $array = [1, 2, 3];
      array_push($array, 4, 5); // 添加元素 4 和 5 到数组末尾
      // 输出: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
      print_r($array); 
      
  • 使用 array_unshift 函数
    • 向索引数组开头添加一个或多个元素
      $array = [1, 2, 3];
      array_unshift($array, 0, -1); // 添加元素 0 和 -1 到数组开头
      // 输出: Array ( [0] => 0 [1] => -1 [2] => 1 [3] => 2 [4] => 3 )
      print_r($array); 
      
  • 使用 array_merge 函数
    • 合并两个或多个数组
      $array1 = [1, 2, 3];
      $array2 = [4, 5, 6];
      // 合并两个数组
      $merged_array = array_merge($array1, $array2); 
      // 输出: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 )
      print_r($merged_array); 
      
  • 使用 + 运算符
    • 合并两个数组(仅添加新键)
      $array1 = ["a" => 1, "b" => 2];
      $array2 = ["b" => 3, "c" => 4];
      // 仅添加新键,忽略已存在的键
      $combined_array = $array1 + $array2; 
      // 输出: Array ( [a] => 1 [b] => 2 [c] => 4 )
      print_r($combined_array); 
      

示例代码

<?php
// 使用 [] 运算符
$array = [1, 2, 3];
$array[] = 4;
print_r($array);

$assoc_array = ["name" => "John", "age" => 30];
$assoc_array["city"] = "New York";
print_r($assoc_array);

// 使用 array_push 函数
$array = [1, 2, 3];
array_push($array, 4, 5);
print_r($array);

// 使用 array_unshift 函数
$array = [1, 2, 3];
array_unshift($array, 0, -1);
print_r($array);

// 使用 array_merge 函数
$array1 = [1, 2, 3];
$array2 = [4, 5, 6];
$merged_array = array_merge($array1, $array2);
print_r($merged_array);

// 使用 + 运算符
$array1 = ["a" => 1, "b" => 2];
$array2 = ["b" => 3, "c" => 4];
$combined_array = $array1 + $array2;
print_r($combined_array);
?>

这些方法可以帮助你根据需要向数组中添加元素。希望这些信息对你有所帮助!如果有其他问题,随时告诉我。

5. 删除数组元素

unset($array[0]); // 删除索引数组中的第一个元素
unset($assoc_array["age"]); // 删除关联数组中的 "age" 元素

6. 遍历数组

  • 使用 foreach 循环
    foreach ($array as $value) {
        echo $value;
    }
    
    foreach ($assoc_array as $key => $value) {
        echo "$key: $value";
    }
    

7. 数组函数

  • 数组长度
    $length = count($array);
    
  • 合并数组
    $array1 = [1, 2, 3];
    $array2 = [4, 5, 6];
    $merged_array = array_merge($array1, $array2);
    
  • 数组键值
    $keys = array_keys($assoc_array);
    $values = array_values($assoc_array);
    
  • 检查元素是否在数组中
    // 检查 3 是否在数组中
    $in_array = in_array(3, $array); 
    // 检查 "name" 是否是关联数组中的键
    $isset = array_key_exists("name", $assoc_array); 
    

8. 示例代码

<?php
// 创建数组
$array = [1, 2, 3, 4, 5];
$assoc_array = ["name" => "John", "age" => 30, "city" => "New York"];

// 访问数组元素
echo $array[0]; // 输出 1
echo $assoc_array["name"]; // 输出 John

// 修改数组元素
$array[0] = 10;
$assoc_array["name"] = "Jane";

// 添加数组元素
$array[] = 6;
$assoc_array["country"] = "USA";

// 删除数组元素
unset($array[0]);
unset($assoc_array["age"]);

// 遍历数组
foreach ($array as $value) {
    echo $value;
}

foreach ($assoc_array as $key => $value) {
    echo "$key: $value";
}

// 数组函数示例
$length = count($array);
$merged_array = array_merge($array, [4, 5, 6]);
$keys = array_keys($assoc_array);
$values = array_values($assoc_array);
$in_array = in_array(3, $array);
$isset = array_key_exists("name", $assoc_array);
?>

这些是 PHP 中一些常见的数组操作方法,希望对你有帮助!如果你有其他问题或需要进一步的示例,请告诉我。

Last Updated:
Contributors: BaronYan