php - 如何在 PHP 中根据匹配值和顺序比较两个数组?
问题描述
我有 2 个数组,我想通过匹配值以及符合条件的总值的顺序和计数来比较它们。
$a = [A,B,C,D,E,F,G];
| | |
$b = [B,A,C,D,F,E,G];
在这种情况下,输出应该是3。我怎样才能以最佳性能实现这一目标?
更新:
我不是只要求匹配的值,值也应该以相同的顺序匹配。
解决方案
Array_diff_assoc 将计算不同的部分 (4)。
Count 将计算项目的数量 (7)。
7-4 = 3。
echo count($a) - count(array_diff_assoc($a,$b)); // 3
编辑或只是 array_intersect_assoc
echo count(array_intersect_assoc($a,$b)); //3
直到现在我才想到。
推荐阅读
- python - tkinter 小部件的 python 控制流程
- xamarin.forms - 在 Xamarin Forms 的 StackLayout 中,如何确保一个控件优先于另一个控件?
- excel - 如果单元格恰好是非连续范围的一部分,则通过 excel vba 更改单元格的值
- python - 超大数组上的并行非负最小二乘
- java - 我应该使用什么工具从网站收集数据
- c++ - void 函子有什么好处/用途吗?
- sql - SQL 语句未将值返回给 UNIX 变量
- django - 尝试在子域上服务 Django 应用程序时,CSRF 令牌失败
- extjs - 从 EXT JS 3.2.0 迁移到 EXT JS 6.0.0
- asp.net-mvc - 身份验证处理后 Chrome 不会重定向回 URL