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

 更新时间:2015年01月09日 09:42:03   投稿:shichen2014  
这篇文章主要介绍了php实现按照权重随机排序数据的方法,是php数据排序中一个比较典型的应用技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • 让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享

    让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享

    ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,只需要在配置文件中设置 'URL_MODEL' => 2 即可。在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,所以我们需要修改nginx.conf文件。
    2011-08-08
  • PHP 上传文件大小限制

    PHP 上传文件大小限制

    有时候需要用php上传比较大的文件,默认是不可以的,必须按照下面的方法修改下。
    2009-07-07
  • php图像处理函数imagecopyresampled用法详解

    php图像处理函数imagecopyresampled用法详解

    这篇文章主要介绍了php图像处理函数imagecopyresampled用法,结合实例形式详细分析了imagecopyresampled函数的功能、参数、使用方法,需要的朋友可以参考下
    2016-12-12
  • PHP中单引号和双引号的区别详解

    PHP中单引号和双引号的区别详解

    看好多代码有时候用单引号或双引号实现包含字符串的内容,其实简单个概括下双引号中的变量可以解析,单引号就是绝对的字符串,下面这篇文章主要给大家介绍了关于PHP中单引号和双引号区别的相关资料,需要的朋友可以参考下
    2023-01-01
  • PHP实现的简单适配器模式示例

    PHP实现的简单适配器模式示例

    这篇文章主要介绍了PHP实现的简单适配器模式,结合具体实例形式分析了php适配器模式的实现技巧与调用方法,需要的朋友可以参考下
    2017-06-06
  • PHP判断文件是否被引入的方法get_included_files用法示例

    PHP判断文件是否被引入的方法get_included_files用法示例

    这篇文章主要介绍了PHP判断文件是否被引入的方法get_included_files用法,结合实例形式分析了get_included_files函数获取引入文件及遍历输出的操作技巧,需要的朋友可以参考下
    2016-11-11
  • php获得用户ip地址的比较不错的方法

    php获得用户ip地址的比较不错的方法

    这篇文章主要介绍了php获得用户ip地址的方法,需要的朋友可以参考下
    2014-02-02
  • php apache开启跨域模式过程详解

    php apache开启跨域模式过程详解

    这篇文章主要介绍了php apache开启跨域模式过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • PHP实现的函数重载功能示例

    PHP实现的函数重载功能示例

    这篇文章主要介绍了PHP实现的函数重载功能,结合实例形式分析了php面向对象程序设计中使用__call方法的重载及构造函数重载相关实现技巧,需要的朋友可以参考下
    2018-08-08
  • php简单判断文本编码的方法

    php简单判断文本编码的方法

    这篇文章主要介绍了php简单判断文本编码的方法,涉及php数组及iconv方法的相关使用技巧,非常简单实用,需要的朋友可以参考下
    2015-07-07

最新评论