php - 多个数组值(某些值相同)如何仅获得 2 个相同的值
问题描述
单个数组中的多个值(一些值相似)如何获取其中一个是获取相似值最小1和最大2次重复的数组
例如这个数组 -
$array_value = array('ab','ab','cd','de','ab','cd','ab','de','xy');
foreach($array_value as $value){
}
我想要输出 - ab、ab、cd、cd、de、xy
解决方案
我认为你的输出应该有两个不是一个?
无论如何,这里是注释中带有解释的代码:
<?php
$array_value = array('ab','ab','cd','de','ab','cd','ab','de','xy');
$arr_count = []; //we use this array to keep track of how many times we've added this
$new_arr = []; //we add elements to this array, or not.
foreach($array_value as $value){
// we've added it before
if (isset($arr_count[$value])) {
// we only add it again one more time, no more.
if ($arr_count[$value] < 2) {
$arr_count[$value]++;
$new_arr[] = $value;
}
}
// we haven't added this before
else {
$arr_count[$value] = 1;
$new_arr[] = $value;
}
}
sort($new_arr);
print_r($new_arr);
/*
(
[0] => ab
[1] => ab
[2] => cd
[3] => cd
[4] => de
[5] => de
[6] => xy
) */
推荐阅读
- mobile - 是否可以将 Js Interop 与 Mobile Blazor 绑定一起使用?
- grep - 在多个目录/子目录中使用 grep 并过滤掉结果?
- c++ - 在 C++20 之前将 malloc 用于 int 未定义的行为
- async-await - 意外的承诺
等待使用 axios 返回 - python - AWS python lambda - 在 lambda 中导入模块与从本地项目中导入模块的区别
- docker - “docker build” 只需要 1 个参数
- python - 增加 plotly choropleth 窗口的大小
- r - 我正在尝试运行 Anderson Darling 测试,并且这种情况一直在发生(见屏幕截图)。我该如何解决这个问题?
- javascript - 仅在此范围内更改类
- python - web scraping HTML table