【发布时间】:2017-10-28 20:10:04
【问题描述】:
大家好,我几乎不需要在这里问,因为搜索总是会产生我正在寻找的答案,但这次我只是不知道要搜索什么。
以下代码按预期工作并显示所需的结果。
注意:总是只能有 3 个结果,即“平均”、“高于平均”或“低于平均”;示例:
$test1 = 'Average';
$test2 = 'Above average';
$test3 = 'Average';
$mystuff = array($test1, $test2, $test3);
$result = array_count_values($mystuff);
asort($result);
end($result);
$answer = key($result);
echo 'Averaging : ' . $answer;
工作示例:
输入:$test1='Average'、$test2='Above average'、$test3='Average'
预期输出:Averaging : Average
(这是正确的,因为它是数组中出现频率最高的。)
问题是,当所有三个 $test 变量都不同时:
$test1 = 'Above average';
$test2 = 'Below average';
$test3 = 'Average';
现在,$answer = Above average(即数组中的第一次出现)。
但是,我想在没有“频繁出现”的情况下设置一个默认值。
我想要的是这样的:
如果所有三个变量都不同,则$answer 必须始终显示“平均”,无论$test1 或$test2 或$test3 值如何。
我不希望您提供我需要的代码,只是指出我要搜索的内容的正确方向。
【问题讨论】:
-
查看
array_unique()函数。如果唯一值的数量与值的总数相同,则您知道所有三个测试变量都是不同的。 -
谢谢@rickdenhaan。我将研究 array_unique 函数。
标签: php arrays variables count default