php生产随机数

要求

生产三种随机数

1、全数字

2、全字母,大小写

3、数字和大小写字母

代码

 <?php
class RandString{
//这个属性表示我们随机数的长度,也就是个数
private $length;
//要哪些类型type为1的时候就是数字类型的,为2的时候字母类型,为3的时候就是数字加上字母的随机数
private $type; public function __construct($length,$type){
$this->length=$length;
$this->type=$type;
} public function randNum(){
switch ($this->type){
case 1:
return join(array_rand(range(0, 9),$this->length));
break;
case 2:
return join(array_rand(array_flip(array_merge(range('a', 'z'),range('A', 'Z'))),$this->length));
break;
case 3:
return join(array_rand(array_flip(array_merge(range(0, 9),range('a', 'z'),range('A', 'Z'))),$this->length));
break;
}
} } $strNum = new RandString(4,1);
echo $strNum->randNum();
echo '<hr/>';
$strNum = new RandString(4,2);
echo $strNum->randNum();
echo '<hr/>';
$strNum = new RandString(4,3);
echo $strNum->randNum();
echo '<hr/>';
echo '<hr/>';
echo '<hr/>';
echo print_r(range('a', 'z'));
echo '<hr/>';
echo print_r(array_flip(range('a', 'z')));
echo '<hr/>';
echo print_r(array_merge(range(0, 9),range('a', 'z'),range('A', 'Z')));
echo '<hr/>';
echo print_r(array_flip(array_merge(range(0, 9),range('a', 'z'),range('A', 'Z'))));
echo '<hr/>';

要点

这里就是几个函数的应用

1、join

join — Alias of implode()

implode — Join array elements with a string

2、array_rand

array_rand — Pick one or more random entries out of an array

3、array_flip

array_flip — Exchanges all keys with their associated values in an array

4、array_merge

array_merge — Merge one or more arrays

5、range

range — Create an array containing a range of elements

php生产随机数的更多相关文章

  1. C语言生产随机数的方法

    尽管在计算机中并没有一个真正的随机数发生器,但是可以做到使产生的数字的重复率很低,以至于它们看起来是随机的.实现这一功能的程序叫做伪随机数发生器. 有关如何产生随机数的理论有许多,这里不讨论这些理论及 ...

  2. C语言中生产随机数 rand()函数

    参考资料:C语言中产生随机数 一:如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间.RAND_MAX定义在stdl ...

  3. python生产随机数案例

    法1: list =list(string.lowercase + string.uppercase) + [str(i) for i in range(10)]FH=('!','@','#','$' ...

  4. js生产随机数

    var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"; var string_le ...

  5. 【erlang】erlang几种生成随机数的方法

    erlang有三个生产随机数的办法 random:uniform(). 这个函数是erlang库random模块提供的.一般都采用这个. 1> random:uniform(). 0.44358 ...

  6. c语言数组应用--统计随机数并打印直方图

    C标准库中生成伪随机数的是rand函数,使用这个函数需要包含头文件stdlib.h,它没有参数,返回值是一个介于0和RAND_MAX之间的接近均匀分布的整数.RAND_MAX是该头文件中定义的一个常量 ...

  7. Javascript和JQuery中常用的随机数产生函数

    无论在普通Js框架或者JQuery中都可以使用的,函数如下,使用方法简介: 1)获取0-100的随机数--getRandom(100); 2)获取0-999的随机数--getRandom(999); ...

  8. java 随机数高效生成

    分享牛,分享牛原创.近期去面试经常被问到java如何生产随机数,以及生成很大的字符串保证不能重复,还要考虑性能,之前本人面试别人的时候,可能不会问这个问题.既然这个java随机数问题经常被问到,那咱们 ...

  9. Random类 一般跟生成随机数有关

    public class MyRandom extends Random{ public static void main(String[] args) { // 随机数,生产随机数 // java提 ...

随机推荐

  1. NOIP2013 D2T1 积木大赛

    [NOIP2013T4]积木大赛 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 noip2013day2 描述 春春幼儿园举办了一年一度的"积木大 ...

  2. POJ 1442 Treap模板

    // by SiriusRen #include <cstdio> #include <cstring> #include <algorithm> using na ...

  3. c++ stl swap

    好久没写了,简单水一下吧! 一个是最近没怎么刷题,圣诞,元旦,leetcode暂停的比赛两周,自己最近沉迷于打游戏,没有好好抓住时间. 其实最近看了一点书,是侯捷的 <stl源码剖析>,有 ...

  4. Json转换成DataTable

    今天看到Json转DataTable的例子,总结一下.... using System; using System.Collections; using System.Collections.Gene ...

  5. /etc/rsyslog.conf配置文件说明

    一.authpriv.*                                      /var/log/secure 服务名称[连接符号]日志等级               日志记录位 ...

  6. 在Hibernate映射文件里配置Sequence

    <!--注意该id的数据类型以及<generator>节点下的<param>节点的写法--> <id name="id" type=&qu ...

  7. LayoutInflater源码解析

    Android使用LayoutInflater来进行布局加载,通常获取方式有两种: 第一种: LayoutInflater layoutInflater = LayoutInflater.from(c ...

  8. C++ 类型转换操作与操作符重载 operator type() 与 type operator()

    类型转换操作符(type conversion operator)是一种特殊的类成员函数,它定义将类类型值转变为其他类型值的转换.转换操作符在类定义体内声明,在保留字 operator 之后跟着转换的 ...

  9. UVa1585修改版

    #include<stdio.h> int main() { int i,k=-1; char a[100]; while(scanf("%s",&a)!=EO ...

  10. WPF 利用RichTextBox 打印出不同颜色的文本

    using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows ...