当前位置: 首页 > news >正文

PHP 实现通用数组字段过滤函数:灵活去除或保留指定 Key

PHP 实现数组去除或保留指定字段的通用函数详解

一、文章标题

《PHP 实现通用数组字段过滤函数:灵活去除或保留指定 Key》


二、摘要

在实际开发中,我们经常需要对数组进行字段级别的操作,例如从一个数组中删除某些敏感字段(如密码、token),或者只保留特定字段用于接口返回。本文将详细解析一个通用的 PHP 函数 —— arrayExcludeReserveKeys,它支持根据传入参数灵活地 去除保留 指定的字段,并支持处理单维数组和二维数组结构。


三、函数功能概述

该函数主要实现以下功能:

  • 支持单层数组和多维数组的操作。
  • 可选择性地 去除保留 指定字段。
  • 利用 PHP 内置函数 array_diff_key()array_intersect_key() 提高执行效率。
  • 可扩展性强,适用于数据脱敏、接口响应裁剪等场景。

四、代码结构解析

1. 公共方法:arrayExcludeReserveKeys()

public function arrayExcludeReserveKeys($array, $fieldKeys = [], $isOperate = true)
参数说明:
参数名类型默认值描述
$arrayarray-待处理的原始数组
$fieldKeysarray[]需要处理的字段列表
$isOperatebooltrue操作类型:true 表示去除字段;false 表示保留字段
方法逻辑:
  • 如果是单层数组,直接调用私有方法 _arrayExcludeReserveKeys() 处理;
  • 如果是二维数组,则遍历每一项并递归调用处理;
  • 返回处理后的结果数组。

2. 私有方法:_arrayExcludeReserveKeys()

private function _arrayExcludeReserveKeys($array, $fieldKeys = [], $isOperate = true)
核心实现:
  • 去除字段:使用 array_diff_key() + array_flip(),排除指定字段;
  • 保留字段:使用 array_intersect_key() + array_flip(),仅保留指定字段。
示例:
$data = [

相关文章:

  • 机器学习的一些基本概念
  • Web 安全进阶:前端信封加解密技术详解
  • 77. Combinations
  • 构建Harbor私有镜像库(详细版)
  • 医学影像科研概述与研究伦理
  • 大厂缓存架构方案-Caffeine+Redis双层缓存架构
  • 如何选用正确的html元素
  • Spark集群架构解析:核心组件与Standalone、YARN模式深度对比(AM,Container,Driver,Executor)
  • Vue-创建应用/挂载应用/根组件模版-.vue单文件/应用配置
  • 上升沿计数 stm32 中断
  • 【R语言科研绘图】
  • python操作mysql数据库
  • R基于逻辑回归模型实现心脏病检测及SHAP值解释项目实战
  • Starrocks 怎么计算各个算子的统计信息
  • R语言科研编程-柱状图
  • DeepSeek 赋能医疗影像分析:从卷积神经网络到临床诊断效率革新
  • Spark 中,map和foreach的区别
  • 基于Spring boot+vue的中医养生系统的设计与实现(源码+论文+部署+安装+调试+售后)
  • STM32之看门狗(IWDG)
  • [CSS3]Flex布局
  • 太原网站建设开发公司/广州市运营推广公司
  • 网站架构模板/零基础学电脑培训班
  • 各个做网站的有什么区别/招代理最好的推广方式
  • 工艺品网站怎么做/什么是网络整合营销
  • 小程序询价表/seo百度点击软件
  • 不会技术怎么做公司网站/店面怎么做位置定位