PHPで簡単なyahtzeeスクリプトを作成していますが、最後に5つのダイスをチェックして最終的な結果を得ました。 配列値のインスタンスを扱う
辺が配列に格納されている5つのダイス
、例えば$dice (2,5,2,7,8)
Iだない配列での作業の経験、しかし、それぞれの数を比較する2同一のインスタンスを見つけたいとする簡単な方法があること、 3同じ、すべて同じなど?
array_search()
?
PHPで簡単なyahtzeeスクリプトを作成していますが、最後に5つのダイスをチェックして最終的な結果を得ました。 配列値のインスタンスを扱う
辺が配列に格納されている5つのダイス
、例えば$dice (2,5,2,7,8)
Iだない配列での作業の経験、しかし、それぞれの数を比較する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
@ user1022585 - array_count_values()がどのように動作し、複数の種類の質問に対して回答する必要がありますか –
@ user1022585:私はあなたに役立つ回答を更新しました。 –