比较$变量以获得分数

时间:2013-04-27 23:48:42

标签: php

好的,这让我头晕目眩。主要是因为我把自己扔到了最深处。

总之;玩家打赌“花扑克”(有趣的钱)我玩了所有必要的东西,以显示结果,全屋,两种等等。但我不能指定一个变量来控制得分用户获得了什么,房子得到了什么。因此无法比较它们通过mySQL更新他们的乐趣。

到目前为止我有什么。这比较了下一部分的randoms来给出结果。

function counting(array $array) {
// Input figures
//print_r($array);

// Run the figures twice through the bucket-counter
$firstBuckets = bucketCounter($array);
$secondBuckets = bucketCounter($firstBuckets);

// Ignore counts of 1
array_shift($secondBuckets);

// Output, just need to do the lookup now
//echo ' converts to ';
//print_r($secondBuckets);
//echo "<br />";
//Lookup Table
if ($secondBuckets[0] == 1 && $secondBuckets[1] == 0) {
    echo ' One Pair';
} else if ($secondBuckets[0] == 2) {
    echo ' Two Pair';
} else if ($secondBuckets[1] == 1 && $secondBuckets[0] == 0) {
    echo ' Three of a kind';
} else if ($secondBuckets[0] == 1 && $secondBuckets[1] == 1) {
    echo ' Full House';
} else if ($secondBuckets[2] == 1) {
    echo ' Four of a kind';
} else if ($secondBuckets[3] == 1) {
    echo ' Five of a kind';
}

}
function counting1(array $array) {
// Input figures
//print_r($array);

// Run the figures twice through the bucket-counter
$firstBuckets = bucketCounter($array);
$secondBuckets = bucketCounter($firstBuckets);

// Ignore counts of 1
array_shift($secondBuckets);

// Output, just need to do the lookup now
//echo ' converts to ';
//print_r($secondBuckets);
//echo "<br />";
//Lookup Table

if ($secondBuckets[0] == 1 && $secondBuckets[1] == 0) {
    echo ' One Pair';
} else if ($secondBuckets[0] == 2) {
    echo ' Two Pair';
} else if ($secondBuckets[1] == 1 && $secondBuckets[0] == 0) {
    echo ' Three of a kind';
} else if ($secondBuckets[0] == 1 && $secondBuckets[1] == 1) {
    echo ' Full House';
} else if ($secondBuckets[2] == 1) {
    echo ' Four of a kind';
} else if ($secondBuckets[3] == 1) {
    echo ' Five of a kind';
}

}
/**
 * Bucket counter
*/
function bucketCounter(array $array) {
$result = array(0, 0, 0, 0, 0, );
foreach($array as $value) {
    if ($value > 0) {
        $result[$value - 1]++;
    }
}

return $result;
}

按下下注按钮后会发生这种情况。

    if (isset($_POST['play'])) {
    $rand1 = rand(1, 5);$rand2 = rand(1, 5);$rand3 = rand(1, 5);$rand4 = rand(1, 5);$rand5 = rand(1, 5);$rand6 = rand(1, 5);$rand7 = rand(1, 5);$rand8 = rand(1, 5);$rand9 = rand(1, 5);$rand10 = rand(1, 5);
    if ($_POST['bet'] <= $user_data['coins']) {
        if ($_POST['bet'] < 999999999) {
            if ($_POST['bet'] > 0.99) {
                if ($user_data['coins'] > 1) {
                    //$userscore = 0;
                    //$hostscore = 0;
                    //echo $rand1.', '.$rand2.', '.$rand3.', '.$rand4.', '.$rand5;
                    echo '<font size="2">You\'ve planted : <br></font>';
                    if ($rand1 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand1 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand1 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand1 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand1 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand2 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand2 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand2 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand2 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand2 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand3 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand3 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand3 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand3 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand3 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand4 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand4 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand4 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand4 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand4 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand5 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand5 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand5 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand5 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand5 === 5) {echo '<img src="images/Flowers_(pastel).png">';}                     
                    //echo '<br>';
                    counting(array($rand1, $rand2, $rand3, $rand4, $rand5));
                    echo ' '.$userscore;
                    echo '<br>';
                    echo '<font size="2">Host planted : <br></font>';
                    if ($rand6 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand6 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand6 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand6 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand6 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand7 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand7 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand7 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand7 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand7 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand8 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand8 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand8 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand8 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand8 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand9 === 1) {     echo '<img src="images/Red_flowers.png">';} else if ($rand9 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand9 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand9 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand9 === 5) {echo '<img src="images/Flowers_(pastel).png">';}
                    if ($rand10 === 1){     echo '<img src="images/Red_flowers.png">';} else if ($rand10 === 2) {echo '<img src="images/Blue_flowers.png">';} else if ($rand10 === 3) {echo '<img src="images/Yellow_flowers.png">';} else if ($rand10 === 4) {echo '<img src="images/Orange_flowers.png">';} else if ($rand10 === 5) {echo '<img src="images/Flowers_(pastel).png">';}                     
                    //echo '<br>';
                    counting1(array($rand6, $rand7, $rand8, $rand9, $rand10));
                    echo '<br>';
                }
            }
        }
    }   
}

如果我尝试将$ userscore设置为count&amp;在count1函数中设置$ hostscore它不允许我在第二个代码框中访问它,因此我无法比较得分并统治胜利者。

1 个答案:

答案 0 :(得分:1)

由于名为“Variable scope”的内容,您无法访问这些变量。

但是在你的情况下克服这个障碍很容易,你只需要返回值。

因此,假设您将分配$ score变量,您只需要添加

return $score;

作为你函数的最后一行。

然后在第二个代码框中 - 更改

counting(array($rand1, $rand2, $rand3, $rand4, $rand5));

$userscore = counting(array($rand1, $rand2, $rand3, $rand4, $rand5));

然后为$ hostscore做同样的事情。

实际上,您甚至不需要两个功能来分别计算用户和主持人得分。只留一个并称之为两次:

$userscore = counting(array($rand1, $rand2, $rand3, $rand4, $rand5));
$hostscore = counting(array($rand6, $rand7, $rand8, $rand9, $rand10));