PHP实现活动人选抽奖功能


Posted in PHP onApril 19, 2017

本文介绍情景为活动人选抽奖,通过简单随机抽取指定人数,依次列举被抽中的人名。示例代码如下:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>活动人选</title>
  </head>
  <body>
  <?php
  $lotterPeopleArr = array();
  $num = 8;

  for($i=0;$i<$num;$i++){
    $lotterPeople = GetRandStr(1);

    while(in_array($lotterPeople, $lotterPeopleArr)){
      $lotterPeople = GetRandStr(1);
    }

    $lotterPeopleArr[$i] = $lotterPeople;
    echo "抽中人:". $lotterPeopleArr[$i].'<br/>';
  }

  // echo '抽中人:'. $lotterPeople;



  /**
   * 生成随机数
   * $type int 默认(字母&&数字) 1 纯字母 2.纯数字 3.英文单词
   */
   function GetRandStr($len='4',$type='3')
  {


    switch($type)
    {
      case '1';
      $chars = array(
          "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
          "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
          "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G",
          "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R",
          "S", "T", "U", "V", "W", "X", "Y", "Z"
      );
      break;
      case '2';
      $chars = array(
          "0", "1", "2",
          "3", "4", "5", "6", "7", "8", "9"
      );
      break;
      case '3';
      $chars = array(
          "小华","小冠","小王","小吴","小朱","小何","小陈","小熊","小斌","小李","小春","小超","小张","小郭","小柯","小梁","小理","小龚","小杰","小余","小洪","小郑","小志","小潘",
      );
      break;
      default;
      $chars = array(
          "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
          "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
          "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G",
          "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R",
          "S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2",
          "3", "4", "5", "6", "7", "8", "9"
      );
      break;
    }
    $charsLen = count($chars) - 1;
    shuffle($chars);
    $output = "";
    for ($i=0; $i<$len; $i++)
    {
    $output .= $chars[mt_rand(0, $charsLen)];
    }
    return $output;
  }
  ?>
  </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP 读取和修改大文件的某行内容的代码
Oct 30 PHP
php Smarty date_format [格式化时间日期]
Mar 15 PHP
使用php判断服务器是否支持Gzip压缩功能
Sep 24 PHP
PHP 下载文件时自动添加bom头的方法实例
Jan 10 PHP
PHP创建桌面快捷方式的实例代码
Feb 17 PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 PHP
php中chdir()函数用法实例
Nov 13 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
Jan 08 PHP
在WordPress的后台中添加顶级菜单和子菜单的函数详解
Jan 11 PHP
Laravel 之url参数,获取路由参数的例子
Oct 21 PHP
TP5多入口设置实例讲解
Dec 15 PHP
PHP高并发和大流量解决方案整理
Mar 09 PHP
thinkphp下MySQL数据库读写分离代码剖析
Apr 18 #PHP
Thinkphp通过一个入口文件如何区分移动端和PC端
Apr 18 #PHP
Yii2汉字转拼音类的实例代码
Apr 18 #PHP
php+resumablejs实现的分块上传 断点续传功能示例
Apr 18 #PHP
ZendFramework2连接数据库操作实例
Apr 18 #PHP
PHP实现的数独求解问题示例
Apr 18 #PHP
PHP使用finfo_file()函数检测上传图片类型的实现方法
Apr 18 #PHP
You might like
PHP4实际应用经验篇(5)
2006/10/09 PHP
(PHP实现)只使用++运算实现加法,减法,乘法,除法
2013/06/27 PHP
php实现两表合并成新表并且有序排列的方法
2014/12/05 PHP
php生成固定长度纯数字编码的方法
2015/07/09 PHP
PHP中JSON的应用技巧
2015/10/10 PHP
PHP中如何防止外部恶意提交调用ajax接口
2016/04/11 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
2017/05/26 PHP
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
使用AngularJS对路由进行安全性处理的方法
2015/06/18 Javascript
php基于redis处理session的方法
2016/03/14 Javascript
JavaScript设计模式之单体模式全面解析
2016/09/09 Javascript
mac下的nodejs环境安装的步骤
2017/05/24 NodeJs
详解基于Angular4+ server render(服务端渲染)开发教程
2017/08/28 Javascript
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
2019/11/13 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
让mocha支持ES6模块的方法实现
2020/01/14 Javascript
[01:07:41]IG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python self,cls,decorator的理解
2009/07/13 Python
python中urllib模块用法实例详解
2014/11/19 Python
Python计算三维矢量幅度的方法
2015/06/15 Python
Python基于回溯法子集树模板解决找零问题示例
2017/09/11 Python
python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)
2019/08/06 Python
Python Collatz序列实现过程解析
2019/10/12 Python
Python获取浏览器窗口句柄过程解析
2020/07/25 Python
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
英国豪华真皮和布艺沙发销售网站:Darlings of Chelsea
2018/01/05 全球购物
英国广泛的照明产品网站:Lights4living
2018/01/28 全球购物
商场经理竞聘演讲稿
2014/01/01 职场文书
社区活动策划方案
2014/08/21 职场文书
街道社区活动报告
2015/02/05 职场文书
合作与交流自我评价
2015/03/09 职场文书
2015毕业设计工作总结
2015/07/24 职场文书
古诗之感恩老师
2019/10/24 职场文书
Pytest实现setup和teardown的详细使用详解
2021/04/17 Python
变长双向rnn的正确使用姿势教学
2021/05/31 Python
OpenCV-Python使用cv2实现傅里叶变换
2021/06/09 Python