创建了一个文本数组随机选择一个来显示,在此我想为每个项目分配时间是可能的


created an array of text randomly pick one to get displayed ,in this i want to allocate time for every item is this possible

使用此 scipt随机选择一个文本数组来显示它工作正常

</head>
<body>
<?php function weightedRand($stream) {
    $pos = mt_rand(1,array_sum(array_keys($stream)));           
    $em = 0;
    foreach ($stream as $k => $v) {
        $em += $k;
        if ($em >= $pos)
            return $v;
    }
}
  $news = array(); //News Feed Array
    $news[] = '<a href="URL">Good morning!</a>';
    $news[] = '<a href="URL">have a nice day</a>';
    $news[] = 'work hard!';
    $news[] = '<a href="URL">experience makes man perfect.</a>';
    $news[] = '<a href="URL">hard work never fails</a>';

?>
<div id="example">
  <ul>
  <?php for ($i = 1; $i <= 30; $i++) {
      echo '<li class="example">';
    echo weightedRand($news).'<br />';
    echo '</li>';
}?>
</ul>
</div>
<script>
$(function() {
  $('#example').vTicker();
});
</script>

但这里每条文字显示 1 分钟

我想

改变,所以我想编辑特定项目的百分比。例如,我可能想要"努力工作永远不会......"在 50% 的时间内显示。这可能这样做吗

你可以像下面这样尝试:

$Expos['Google']['Science']='news.google.fr/news?topic=t';
$Expos['Google']['Economie']='news.google.fr/news?topic=b';
$Expos['Google']['Sante']='news.google.fr/news?topic=m';
$Expos['Yahoo']='fr.news.yahoo.com';
$Expos['Events']['LogicielLibre']='agendadulibre.org';
$Expos['MyBlog']='www.kik-it.com';
function array_multi_rand($Zoo){
    $Boo=array_rand($Zoo);
    if(is_array($Zoo[$Boo])){
        return array_multi_rand($Zoo[$Boo]);
    }else{
        return $Zoo[$Boo];
    }
}
echo(array_multi_rand($Expos));

获取有关 http://us1.php.net/array_rand 的更多信息