当前位置:网站首页>通过&修改数组中的值
通过&修改数组中的值
2022-08-04 05:25:00 【eleven_-11】
下面就直接放出代码,针对使用递归删除数组中的值,存在空数组时,可以过滤空数组,具体实现可以参考以前写的文章,这篇主要介绍’&'处理数组
<?php
$arrTest = array(
'A' => [
'An' => 'anan',
'Bn' => 'bnbn',
],
'C' => [
'Cn' => 'cncn',
'Dn' => 'dndn',
],
);
/**
* 修改数组中的值
* @param $arrToChange array 需要处理的数组
* @return array 返回处理后的数组
*/
function toChangeValue($arrToChange)
{
//使用'&'引用每次遍历过后的值,这样修改的就是原数组的值
foreach ($arrToChange as &$value) {
foreach ($value as &$each) {
if ($each == 'anan') {
$each = 'enen';
}
}
}
return $arrToChange;
}
/**
* 通过递归和'&'删除数组中不符合要求的值
* @param $arrToDelete array 需要处理的数组
* @return array 返回处理后的数组
*/
function toDeleteValue(&$arrToDelete)
{
foreach ($arrToDelete as $key => $value) {
if (is_array($value)) {
//将递归过后的数组地址传值给原数组, 这样才能删除掉原数组中的值,而不是删除复制数组中的值
$arrToDelete[$key] = toDeleteValue($value);
} elseif ($value == 'anan') {
unset($arrToDelete[$key]);
}
}
return $arrToDelete;
}
边栏推荐
猜你喜欢

OpenSSF 安全计划:SBOM 将驱动软件供应链安全

C语言 -- 操作符详解

OpenGLES 学习之帧缓存

解决安装nbextensions后使用Jupyter Notebook时出现template_paths相关错误的问题

idea设置识别.sql文件类型以及其他文件类型

一个对象引用的思考

4.3 Annotation-based declarative transactions and XML-based declarative transactions

Grain Mall - Basics (Project Introduction & Project Construction)

嵌入式系统驱动初级【4】——字符设备驱动基础下_并发控制

Cannot read properties of null (reading 'insertBefore')
随机推荐
Get the selected content of the radio box
el-Select selector bottom fixed
[Cocos] cc.sys.browserType可能的属性
Unity自动生成阻挡Collider的GameObject工具
The Road to Ad Monetization for Uni-app Mini Program Apps: Full Screen Video Ads
JNI基本使用
What are the functions of mall App development?
部署LVS-DR群集【实验】
擎朗智能全国研发创新中心落地光谷:去年曾获2亿美元融资
Grain Mall - Basics (Project Introduction & Project Construction)
7、特殊SQL的执行
LCP 17. 速算机器人
CentOS7 —— yum安装mysql
JS基础--强制类型转换(易错点,自用)
[Cocos 3.5.2]开启模型合批
DP4398:国产兼容替代CS4398立体声24位/192kHz音频解码芯片
7.16 Day22---MYSQL (Dao mode encapsulates JDBC)
力扣:96.不同的二叉搜索树
力扣:343. 整数拆分
想低成本保障软件安全?5大安全任务值得考虑