php按照权重随机

10,'b'=>20,'c'=>50)  
 * @return string key   键名   
 */  
function roll($weight = array()) {   
	$roll = rand ( 1, array_sum ( $weight ) );   
	$_tmpW = 0;   
	$rollnum = 0;   
 	foreach ( $weight as $k => $v ) {   
		$min = $_tmpW;   
	 	$_tmpW += $v;   
	 	$max = $_tmpW;   
	 	if ($roll > $min && $roll <= $max) {   
	 		$rollnum = $k;   
	 		break;   
	 	}   
	}   
 	return $rollnum;   
}   
  
$row=roll(array('a'=>10,'b'=>20,'c'=>50));   
echo $row;   
?>

 

清除DNS缓存

清除DNS缓存信息法:
当计算机对域名访问时并不是每次访问都需要向DNS服务器寻求帮助的,一般来说当解析工作完成一次后,该解析条目会保存在计算机的DNS缓存列表中,如果这时DNS解析出现更改变动的话,由于DNS缓存列表信息没有改变,在计算机对该域名访问时仍然不会连接DNS服务器获取最新解析信息,会根据自己计算机上保存的缓存对应关系来解析,这样就会出现DNS解析故障。这时我们应该通过清除DNS缓存的命令来解决故障
第一步:通过“开始->运行->输入CMD”进入命令行模式。
第二步:在命令行模式中我们可以看到在ipconfig /?中有一个名为/flushdns的参数,这个就是清除DNS缓存信息的命令。
第三步:执行ipconfig /flushdns命令,当出现“successfully flushed the dns resolver cache”的提示时就说明当前计算机的缓存信息已经被成功清除。
第四步:接下来我们再访问域名时,就会到DNS服务器上获取最新解析地址,再也不会出现因为以前的缓存造成解析错误故障了