我的代码是这样的:
<?php
$colors = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$i = 0;
foreach ($colors as $color) {
?>
<div class="<?php echo $i==0 ? 'active' : '' ?>">
<?php echo $color.'-'.$i; ?>
</div>
<?php
$i++;
}
?>
当执行上面的代码时,第一个类将激活
我想让它是随机的
因此,执行时,任何类都可以激活
例如,当我跑步时,第一个div上的课程将处于活动状态 当我再次运行时,第三个div上的类是活动的。 所以它是随机的
我该怎么做?
答案 0 :(得分:1)
只需使用rand(0,count($colors)-1)
,它就会在您的限制之间提供一个数字
<?php
$colors = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$i = 0;
$rand =rand(0,count($colors)-1);
foreach ($colors as $color) {
?>
<div class="<?=($i== $rand)? 'active' : '' ?>">
<?php echo $color.'-'.$i; ?>
</div>
<?php
$i++;
}
?>
答案 1 :(得分:1)
试试这个:
<?php
$colors = ["a" => "red", "b" => "green", "c" => "blue", "d" => "yellow"];
$i = 0;
$activeIndex = array_rand($colors);
foreach ($colors as $key => $color) {
echo "<div class=\"" . (($key == $activeIndex) ? 'active' : '') . "\">$color-$i</div>";
$i++;
}
?>
它使用php的array_rand()
函数来获取数组的键以选择为活动状态。
答案 2 :(得分:0)
使用rand()函数。
$random = rand(0,5)
这将返回0到5之间的随机int。有关更多信息,请访问google rand()php
答案 3 :(得分:0)
要么使用
array_rand($colors, 1)
或您使用
mt_rand(0, count($colors));
有关详细信息,请参阅手册:http://php.net/manual/en/function.array-rand.php&amp; http://php.net/mt_rand
答案 4 :(得分:0)
以下代码将返回随机值。
$colors = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$colors = array_rand($colors, 1);
echo $colors;