我正在PHP中制作一个简单的yahtzee脚本,我已经完成了最后一点,它在最后检查5个骰子的结果。使用数组值实例
5个骰子双方都存储在一个阵列,例如$dice (2,5,2,7,8)
我不是在与阵列工作经验丰富,但有更简单的方法来比较每个数字,喜欢找2相同的情况下, 3相同,都是一样的等?
array_search()
?
我正在PHP中制作一个简单的yahtzee脚本,我已经完成了最后一点,它在最后检查5个骰子的结果。使用数组值实例
5个骰子双方都存储在一个阵列,例如$dice (2,5,2,7,8)
我不是在与阵列工作经验丰富,但有更简单的方法来比较每个数字,喜欢找2相同的情况下, 3相同,都是一样的等?
array_search()
?
array_count_values()
可能是一个值得关注的功能。它将计算数组中值的实例数。
例子:
$dice = array(2,5,2,7,7);
$count = array_count_values($dice);
if($n = array_keys($count, 2))
{
// 2 of a kind
// $n = array(2, 7)
}
if(array_keys($count, 4))
{
// 4 of a kind
}
if(array_keys($count, 2) && array_keys($count, 3))
{
// Full House
}
就数得过来。
for ($i=0; $i<count($dice); $i++)
$counter[$dice[$i]]++;
用途:
var_dump(array_count_values($array));
感谢,如果有什么有一个种多2,种3? – user1022585 2012-01-01 13:28:01
@ user1022585 - 阅读array_count_values()是如何工作的,这应该可以回答你关于多种2的问题 – 2012-01-01 13:34:13
@ user1022585:我更新了我的答案,它可以帮助你。 – 2012-01-01 13:49:34