Имам следната структура на данните;
Array ( [0] => Array ([suit] => c [rank] => A )
[1] => Array ( [suit] => d [rank] => A ) )
Искам да тествам дали тези карти са определени стойности и показват подходящо съобщение;
if (
(($hand[0]["rank"] == "A") && ($hand[1]["rank"] == "A"))
|| (($hand[0]["rank"] == "K") && ($hand[1]["rank"] == "K"))
|| (($hand[0]["rank"] == "Q") && ($hand[1]["rank"] == "Q"))
|| (($hand[0]["rank"] == "A") && ($hand[1]["rank"] == "K"))
|| (($hand[0]["rank"] == "K") && ($hand[1]["rank"] == "A"))
) {
echo "Action: Raise pre-flop. Re-raise if already raised.<br />n";
}
if (
(($hand[0]["rank"] == "7") && ($hand[1]["rank"] == "7"))
|| (($hand[0]["rank"] == "A") && ($hand[1]["rank"] == "J") && ($hand[0]["suit"] == $hand[1]["suit"]))
|| (($hand[0]["rank"] == "J") && ($hand[1]["rank"] == "Q") && ($hand[0]["suit"] == $hand[1]["suit"]))
|| (($hand[0]["rank"] == "10") && ($hand[1]["rank"] == "J") && ($hand[0]["suit"] == $hand[1]["suit"]))
) {
echo "Action: Worth a call pre-flop (provided no-one has raised).<br />n";
}
Аз опростих IF-тата, като премахнах някои от условията.
Може ли някой да предложи по-добър начин да направите това?
Отговори:
0 за отговор № 1Може би ще се опитате да използвате in_array () метода
0 за отговор № 2
Опитайте се да използвате позовавания по следния начин:
$rank0 =& $hand[0]["rank"];
$rank1 =& $hand[1]["rank"];
if (
($rank0 == "A" && $rank1 == "A")
|| (...)
Просто като първа стъпка за минимизиране на кода