我正在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