0

カスタム キャプチャを作成していますが、うまく機能しますが、$rand_keys表示されるボックスの数よりも大きい乱数が選択されることがあります。これを修正するにはどうすればよいですか?

$color = array("red", "blue", "yellow", "white", "green", "purple", "brown", "orange", "pink", "black");
$random_num_box = mt_rand(3,8);

$numbers=array(0,1,2,3,4,5,6,7,8,9);

$rand_keys = array_rand($numbers, $random_num_box);
$ran_box =  mt_rand(0, $random_num_box);

echo "Random number of boxes:  ".$random_num_box."<br /><br />";
echo "<div>";
foreach ($rand_keys as $k=>$v) {
    echo "<div style='width: 20px; height: 20px; border: 1px solid #dcdcdc; margin-right: 2px; display: inline-block; background: ".$color[$numbers[$v]].";'></div>";
}
echo "</div>";

echo "<br />What is the color of box # ". ($ran_box + 1) ."?";
echo "<br />Answer:  ".$color[$rand_keys[$ran_box]];
4

2 に答える 2

1

から1を引くだけでいいと思います$ran_box

$ran_box =  mt_rand(0, $random_num_box-1);
于 2013-04-16T03:18:39.463 に答える