php数组算法(1)判断一维数组和多元数组中的元素是否相等并输出键值key

在php中,如何判断1,0,1和[

0, 0, 0,//体质正常

1, 0, 0,//气虚体质

0, 1, 0,//血瘀体质

0, 0, 1,//阴虚体质

1, 1, 0,//气虚兼血瘀体质

1, 0, 1,//气虚兼阴虚体质

0, 1, 1,//血瘀兼阴虚体质

1, 1, 1,//气虚兼血瘀兼阴虚体质

];中的第n项相等,并输出对应的键值

在PHP中,你可以使用array_filter()函数来过滤出与给定数组相等的子数组,并使用array_keys()函数获取匹配项的键值。以下是一个示例代码:

php 复制代码
$givenArray = [1, 0, 1];
$targetArrays = [
    [0, 0, 0], // 体质正常
    [1, 0, 0], // 气虚体质
    [0, 1, 0], // 血瘀体质
    [0, 0, 1], // 阴虚体质
    [1, 1, 0], // 气虚兼血瘀体质
    [1, 0, 1], // 气虚兼阴虚体质
    [0, 1, 1], // 血瘀兼阴虚体质
    [1, 1, 1]  // 气虚兼血瘀兼阴虚体质
];

$result = array_filter($targetArrays, function($array) use ($givenArray) {
    return $array == $givenArray;
});

if (count($result) > 0) {
    $keys = array_keys($result);
    echo "第" . $keys[0] . "项相等,对应的键值是:" . $keys[0];
} else {
    echo "没有找到相等的项";
}

在上述代码中,array_filter()函数用于过滤出与$givenArray相等的子数组,并返回一个包含匹配项的新数组。然后,使用array_keys()函数获取匹配项的键值。最后,通过比较匹配项的数量,判断是否存在相等的项,并输出相应的信息。

请注意,上述代码假设目标数组中的子数组是按顺序排列的,并且每个子数组的长度是相同的。


@漏刻有时

相关推荐
小灰灰搞电子10 分钟前
Qt 队列容器 QQueue 的详解与示例
开发语言·qt·qqueue
ACP广源盛1392462567335 分钟前
GSV6155@ACP# Type-C 视频信号转换芯片:技术架构、工程痛点适配与落地场景分析
大数据·c语言·开发语言·人工智能·分布式·嵌入式硬件·架构
程序员-Benothing42 分钟前
Java集合:List实现类深度对比
java·开发语言·后端·面试·list
酷在前行1 小时前
【R论文复刻】Nature Communications 冲积图进阶:状态转移、流带排序与多面板排版(保姆级教程)
开发语言·r语言
减瓦1 小时前
用 Git 为本地文件打造一台时光机
开发语言·git·编辑器
冻柠檬飞冰走茶1 小时前
PTA基础编程题目集 7-37 整数分解为若干项之和(C语言实现)
c语言·开发语言·数据结构·算法
开开心心就好1 小时前
文件批量重命名工具简单好用支持规则改名
java·开发语言·b树·ocr·excel·音视频·kmeans
末代iOS程序员华仔2 小时前
OPC + Flutter + Swift:跨平台应用上架与专业知识点获客实战指南
开发语言·flutter·swift
脚踏实地皮皮晨2 小时前
003004002_UniformGrid控件的使用方法
开发语言·c#·.net·wpf·visual studio
j7~3 小时前
【Linux】二十六.线程篇三《Linux多线程编程:线程控制、线程ID以及进程地址空间分布、线程局部存储__thread以及clone系统调用》---详解
linux·运维·服务器·开发语言·c++·多线程编辑·线程的控制