专栏首页我的博客php按照权重随机

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;   
?>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • logstash之input配置generator类型详解

    用途 生成测试数据 配置示例 input { generator { count => 100 message => '...

    苦咖啡
  • 简单PDO用法说明

    pdo知识简介 PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询...

    苦咖啡
  • PHP7特性

    1、标量类型声明 2、返回值类型声明 3、null合并运算符 $username = $_GET[‘user’] ?? ‘nobody’; $usern...

    苦咖啡
  • 洛谷P3773 [CTSC2017]吉夫特(Lucas定理,dp)

    满足$b_1 < b_2 < \dots < b_k$且$a_{b_1} \geqslant a_{b_2} \geqslant \dots \geqslant...

    attack
  • Django Rest Framework 序列化(上)

    多对多关系的时候,django 会自动生成第三张表维系表关系,字段分别是 userinfo 和 role 的 id,其中 api_userinfo_roles ...

    小团子
  • 无人驾驶汽车:软件模拟其实比路测更重要?

    一辆Uber的无人驾驶测试车在美国亚利桑那州夜间撞人致死事件,让产业界开始思考非常重要的问题:无人驾驶汽车开发社群是否应该更着重软件仿真,而不是积极累积数百万英...

    机器人网
  • centos6.8搭建LAMP(能完整跑起来)

    ⚠️注意:配置、编译、安装httpd-2.4.25时不能开启--enalbe-ssl 需要找原因,目前不影响运行

    botkenni
  • 改进型MapReduce

    本文通过对MapReduce的分析,列出MapReduce存在的问题,然后提出一种解决这些问题的改进型MapReduce,这种改进型的MapReduce暂且取名...

    一见
  • 腾讯团队发现 SQLite 漏洞:或影响 Chrome 等数千款应用

    据美国科技媒体 ZDNet 报道,腾讯 Blade 安全团队发现的一个 SQLite 漏洞可以让黑客在受害者的电脑上远程运行恶意代码,还会导致程序内存泄露或程序...

    周俊辉
  • MapReduce编程模型和计算框架架构原理

    Hadoop解决大规模数据分布式计算的方案是MapReduce。MapReduce既是一个编程模型,又是一个计算框架。也就是说,开发人员必须基于MapReduc...

    王知无

扫码关注云+社区

领取腾讯云代金券