我有以下代码用于在每次foreach循环它的循环时从数组中选择一个随机项。阻止随机数组的相同选择
<?php $variables = array('success', 'warning', 'info', 'danger'); ?>
<?php foreach($os->list as $list): $var = 'success'; ?>
<div class="progress-bar progress-bar-<?php echo $variables[array_rand($variables)]; ?>" style="width: <?php echo $list->metrics->visits; ?>%" title="<?php echo $list->os.' '.$list->version; ?>">
<span class="sr-only"><?php echo $list->metrics->visits; ?>%</span>
</div>
<?php endforeach; ?>
我唯一的问题是,一个它选择success
,然后在下一次它选择的时间success
你再不能告诉数据的差异。
success, info, danger, success, danger, info
只是没有:如果选择了像我会好起来的
success, info, info, danger, success, success
其中两个项目并排结束侧。
有没有办法做到这一点,还是我浪费了我的时间?
UPDATE
我虽然这件事,但我不知道在那里用它去:
<?php foreach($os->list as $list): $var = 'success'; ?>
<?php
if($var){
$var1 = $var;
$var = $variables[array_rand($variables)];
if($var == $var1){
}
}
?>
<div class="progress-bar progress-bar-<?php echo $var; ?>" style="width: <?php echo $list->metrics->visits; ?>%" title="<?php echo $list->os.' '.$list->version; ?>">
为什么你不能使用洗牌功能......? – user1844933
从来没有听说过它... – user3367639
我试过了,每一个都以相同的变量结束。 – user3367639