公平的洗牌并将洗好的牌存储在一个整形数组里
假设有一款扑克游戏,现需要用一套洗牌算法,公平的洗牌并将洗好的牌存储在一个整形数组里
$card_num = 54;//牌数
function wash_card($card_num){
$cards = $tmp = array();
for($i = 0;$i < $card_num;$i++){
$tmp[$i] = $i;
}
for($i = 0;$i < $card_num;$i++){
$index = rand(0,$card_num-$i-1);
$cards[$i] = $tmp[$index];
unset($tmp[$index]);
$tmp = array_values($tmp);
}
return $cards;
}
var_dump(wash_card($card_num));
登录后可发表评论