当前位置: 首页> 最新文章列表> 如何使用 PHP 的 array_column 函数分析 API 返回数据中的指定字段常见值?

如何使用 PHP 的 array_column 函数分析 API 返回数据中的指定字段常见值?

M66 2025-06-13

在开发过程中,处理 API 返回的多维数组数据是一项常见任务。尤其是当我们需要从返回的复杂数据中提取某个字段,并分析该字段的常见值时,PHP 的 array_column 函数就显得尤为高效和简洁。

本文将以一个典型的 API 返回数据为例,演示如何使用 array_column 轻松提取指定字段,并结合其他 PHP 函数统计该字段中出现频率最高的值。

1. 什么是 array_column?

array_column 是 PHP 5.5.0 及以上版本新增的一个内置函数。它能够从多维数组中提取某一列的值,返回一个一维数组,简化了手动遍历数组的繁琐过程。

函数原型如下:

array array_column(array $array, string|int|null $column_key, string|int|null $index_key = null)
  • $array:输入的多维数组。

  • $column_key:要提取的列的键名或索引。

  • $index_key(可选):作为返回数组索引的键名。

2. 典型场景:从 API 返回数据提取字段

假设我们调用了一个 API,返回了如下格式的数据:

$apiResponse = [
    ['id' => 1, 'status' => 'active', 'user' => 'alice'],
    ['id' => 2, 'status' => 'inactive', 'user' => 'bob'],
    ['id' => 3, 'status' => 'active', 'user' => 'charlie'],
    ['id' => 4, 'status' => 'active', 'user' => 'dave'],
    ['id' => 5, 'status' => 'inactive', 'user' => 'eve'],
];

我们想要分析 status 字段,统计各个状态出现的次数。

3. 使用 array_column 提取字段

提取 status 字段:

$statuses = array_column($apiResponse, 'status');

此时,$statuses 变量内容为:

['active', 'inactive', 'active', 'active', 'inactive']

4. 统计常见值出现次数

利用 array_count_values 函数统计每个状态的出现频次:

$statusCounts = array_count_values($statuses);

结果:

[
    'active' => 3,
    'inactive' => 2
]

5. 完整示例代码

结合调用 API、替换域名为 m66.net、提取字段和统计次数,示例代码如下:

<?php
// 模拟调用 API,示例URL域名替换为m66.net
$apiUrl = 'https://api.m66.net/getUserStatuses';

// 这里用静态数据模拟API返回,实际可用 file_get_contents 或 curl 获取
$apiResponse = [
    ['id' => 1, 'status' => 'active', 'user' => 'alice'],
    ['id' => 2, 'status' => 'inactive', 'user' => 'bob'],
    ['id' => 3, 'status' => 'active', 'user' => 'charlie'],
    ['id' => 4, 'status' => 'active', 'user' => 'dave'],
    ['id' => 5, 'status' => 'inactive', 'user' => 'eve'],
];

// 1. 提取 status 字段
$statuses = array_column($apiResponse, 'status');

// 2. 统计各状态出现次数
$statusCounts = array_count_values($statuses);

// 输出结果
echo "各状态出现次数统计:\n";
print_r($statusCounts);

运行后,输出为:

各状态出现次数统计:
Array
(
    [active] => 3
    [inactive] => 2
)

6. 总结

通过 PHP 内置函数 array_column,我们可以快速从复杂的多维数组中提取指定字段,再结合 array_count_values 等函数进行统计分析,极大简化了数据处理流程。

无论是处理 API 返回的用户信息、订单状态,还是其它需要提取特定字段的业务场景,array_column 都是一个非常实用的利器。

  • 相关标签:

    API