php扑克比较大小
时间: 2023-07-04 07:24:22 浏览: 46
在 PHP 中,可以通过比较扑克牌的点数和花色来确定它们的大小。
扑克牌的点数从小到大依次为:2、3、4、5、6、7、8、9、10、J、Q、K、A。其中 J、Q、K、A 分别表示为 11、12、13、14。
扑克牌的花色包括:♠️(黑桃)、♥️(红心)、♣️(梅花)和 ♦️(方块)。
比较两张牌大小时,先比较它们的点数,如果点数相同再比较花色,按照黑桃>红心>梅花>方块的顺序比较大小。
下面是一个示例代码,用于比较两张扑克牌的大小:
```
function compare($card1, $card2) {
$card1_point = get_point($card1);
$card2_point = get_point($card2);
if ($card1_point != $card2_point) {
return $card1_point > $card2_point ? 1 : -1;
} else {
$card1_suit = get_suit($card1);
$card2_suit = get_suit($card2);
if ($card1_suit != $card2_suit) {
$suit_order = array('s', 'h', 'c', 'd');
return array_search($card1_suit, $suit_order) > array_search($card2_suit, $suit_order) ? 1 : -1;
} else {
return 0;
}
}
}
function get_point($card) {
$point_map = array(
'2' => 2,
'3' => 3,
'4' => 4,
'5' => 5,
'6' => 6,
'7' => 7,
'8' => 8,
'9' => 9,
'T' => 10,
'J' => 11,
'Q' => 12,
'K' => 13,
'A' => 14
);
return $point_map[$card[0]];
}
function get_suit($card) {
return $card[1];
}
```
其中,`compare` 函数用于比较两张牌的大小,返回值为 1 表示第一张牌大,为 -1 表示第二张牌大,为 0 表示两张牌相等。`get_point` 函数用于获取牌的点数,`get_suit` 函数用于获取牌的花色。