PHP生成随机数的方法实例分析
作者:shichen2014 发布时间:2024-05-03 15:49:09
标签:PHP,随机数
通常情况下,当我们要生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_rand()或rand()生成php随机数,从字符池中随机选取字符,最后拼凑出需要的长度。
function randomkeys($length)
{
$pattern = '1234567890abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLOMNOPQRSTUVWXYZ,./&l
t;>?;#:@~[]{}-_=+)(*&^%$?!'; //字符池
for($i=0;$i<$length;$i++)
{
$key .= $pattern{mt_rand(0,35)}; //生成php随机数
}
return $key;
}
echo randomkeys(8);
这个php随机函数能生成XC*=z~7L这样的字符串,够随机!现在介绍另一种用PHP生成随机数的方法:利用chr()函数,省去创建字符池的步骤。
function randomkeys($length)
{
$output='';
for ($a = 0; $a < $length; $a++) {
$output .= chr(mt_rand(33, 126)); //生成php随机数
}
return $output;
}
echo randomkeys(8);
在第二个php随机函数里,先用mt_rand()生成一个介于33到126之间的php随机数,然后用chr()函数转化成字符。查看ascii码表就会发现,33到126代表的正是第一个函数中字符池里的所有字符。第二个函数和第一个函数功能相同,而且更简洁。
希望本文所述对大家的php程序设计有所帮助。


猜你喜欢
- 三个工具包python操作excel的三个工具包如下,注意,只能操作.xls,不能操作.xlsx。• xlrd: 对excel进行读相关操作
- set()函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。set 语法:class set([it
- 本文实例讲述了PHP开发实现微信退款功能。分享给大家供大家参考,具体如下:最近在调微信退款接口,发现有许多坑,更大家分享一下① 要是在测试的
- while循环只要循环条件为True(以下例子为x > y),while循环就会一直 执行下去:u, v, x, y = 0, 0,
- "^/d+$" //非负整数(正整数 + 0)"^[0-9]*[1-9][0-9]*$" //正整数
- np.percentilenumpy.percentile(a, q, axis=None, out=None, overwrite_inp
- 如下所示:# -*- coding: utf-8 -*-import threadingimport threadimport timecl
- 1.依次安装python2和python3,并添加到系统环境变量中2.找到python3的安装目录,一般在C:\Users\Administ
- 禁用GPU设置# 在import tensorflow之前import osos.environ['CUDA_VISIBLE_DEV
- 此方法会导致就好像它是在一个<font size="size">标记的字符串显示在规定的大小语法
- Python2 和 Python3 是不兼容的,如果碰到无法升级到 Python2 代码,或者同事中有坚守 Python2 阵营的情况,就要
- 约定:import pandas as pdimport numpy as npfrom numpy import nan as NaN填充
- 情景一: 表中数据 name score aaa 11 aaa 19 bbb 12 bbb 18 ccc 19 ddd 21 期望查询结果如
- 教程前先给大家看看小编的实现成果吧!图1:图2:图3:教程:实现这个功能我们需要五个php文件:login.php(登录界面,如图2)<
- 先上代码举例说明:import argparse parser = argparse.ArgumentParser()
- 今天select * from 表名 where to_days(时间字段名) = to_days(now());昨天SELECT * FR
- 详解Python中的三元运算什么是三元运算符在大部分编程语言中都有三目运算,也称三元运算,Python语言从Python2.5版本开始也引入
- 前言这一期我们继续完善我们的魔塔小游戏。废话不多说,让我们愉快地开始吧~开发工具Python版本: 3.7.4相关模块:cpgam
- 1.获取所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name2.获取所有表
- 本文实例讲述了Ubuntu下使用Python实现游戏制作中的切分图片功能。分享给大家供大家参考,具体如下:why拿到一个人物行走的素材,要用