PHP后方DB负载--权重算法

字体大小: 中小 标准 ->行高大小: 标准
  1. <?php  
  2.     $db[1]=5;  
  3.     $db[2]=10;  
  4.     $db[3]=20;  
  5.   
  6.     //权重算法一  
  7.     $a="111112222222222333333333333333333333";  //str_repeat生成字符串活力  
  8.     echo strlen($a);  
  9.     echo '<br/>';  
  10.   
  11.     $w=mt_rand(0,strlen($a)-1);  //选取一个下标  
  12.   
  13.     echo $w;  
  14.     echo '<br>';  
  15.     echo $a{$w};  
  16.     echo '<hr>';  
  17.   
  18.   
  19.     //权重算法二  
  20.     $wg[1]=$db[1];  
  21.     $wg[2]=$wg[1]+$db[2];  
  22.     $wg[3]=$wg[2]+$db[3];  
  23.   
  24.   
  25.     $total=$db[1]+$db[2]+$db[3];  
  26.     echo $total.'<br>';  
  27.     $n=mt_rand(0,$total);  
  28.     echo $n.'<br>';  
  29.   
  30.     for($i=1;$i<=count($wg);$i++){  
  31.         if($n<=$wg[$i]){  
  32.             echo "wg{$i}";  
  33.             break;  
  34.         }  
  35.     }  

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/69179.html