php实现按照权重随机排序数据的方法


Posted in PHP onJanuary 09, 2015

本文实例讲述了php实现按照权重随机排序数据的方法。分享给大家供大家参考。

具体实现方法如下:

<?php   

/**  

 * @param array $weight 权重  例如array('a'=>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;   

?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
常用的php ADODB使用方法集锦
Mar 25 PHP
PHP批量采集下载美女图片的实现代码
Jun 03 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
May 07 PHP
php中ob_flush函数和flush函数用法分析
Mar 18 PHP
php简单统计字符串单词数量的方法
Jun 19 PHP
yii2中添加验证码的实现方法
Jan 09 PHP
Zend Framework连接Mysql数据库实例分析
Mar 19 PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 PHP
PHP编程实现csv文件导入mysql数据库的方法
Apr 29 PHP
PHP设计模式之建造者模式定义与用法简单示例
Aug 13 PHP
Laravel重定向,a链接跳转,控制器跳转示例
Oct 22 PHP
laravel excel 上传文件保存到本地服务器功能
Nov 14 PHP
PHP实现采集抓取淘宝网单个商品信息
Jan 08 #PHP
linux中cd命令使用详解
Jan 08 #PHP
php计划任务之ignore_user_abort函数实现方法
Jan 08 #PHP
网站防止被刷票的一些思路与方法
Jan 08 #PHP
分享常见的几种页面静态化的方法
Jan 08 #PHP
php的ddos攻击解决方法
Jan 08 #PHP
php的sso单点登录实现方法
Jan 08 #PHP
You might like
PHP中的串行化变量和序列化对象
2006/09/05 PHP
基于PHP CURL获取邮箱地址的详解
2013/06/03 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
2013/11/26 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
jquery 获取json数据实现代码
2009/04/27 Javascript
JS解析XML的实现代码
2009/11/12 Javascript
Bootstrap实现导航栏的2种方式
2016/11/28 Javascript
微信小程序 在线支付功能的实现
2017/03/14 Javascript
Vue框架中正确引入JS库的方法介绍
2017/07/30 Javascript
基于Vue 实现一个中规中矩loading组件
2019/04/03 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
Easyui 去除jquery-easui tab页div自带滚动条的方法
2019/05/10 jQuery
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
JS 5种遍历对象的方式
2020/06/16 Javascript
[01:12:08]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.24
2019/09/10 DOTA
Python写的一个简单DNS服务器实例
2014/06/04 Python
用Python的Django框架完成视频处理任务的教程
2015/04/02 Python
python实现应用程序在右键菜单中添加打开方式功能
2017/01/09 Python
Python面向对象编程基础解析(二)
2017/10/26 Python
用十张图详解TensorFlow数据读取机制(附代码)
2018/02/06 Python
解决Python import .pyd 可能遇到路径的问题
2021/03/04 Python
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
台湾深度自由行旅游平台:Tripbaa趣吧
2017/10/10 全球购物
SQL Server面试题
2016/10/17 面试题
深圳-东方伟业笔试部分
2015/02/11 面试题
会计与审计专业大专生求职信
2013/10/03 职场文书
美术专业个人自我评价
2014/01/18 职场文书
2014年教师节演讲稿
2014/09/03 职场文书
2014年党员自我评价材料
2014/09/22 职场文书
2015年艾滋病宣传活动总结
2015/03/27 职场文书
运动会3000米加油稿
2015/07/21 职场文书
新人入职感言
2015/07/31 职场文书
68句权威创业名言
2019/08/26 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书
详细总结Python常见的安全问题
2021/05/21 Python
OpenCV-Python实现轮廓的特征值
2021/06/09 Python