PHP生成随机字符串实例代码(字母+数字)


Posted in PHP onSeptember 11, 2019

当我们要生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_rand()或rand()生成php随机数,从字符池中随机选取字符,最后拼凑出需要的长度

function randomkeys($length) 
{ 
 $pattern = '1234567890abcdefghijklmnopqrstuvwxyz 
    ABCDEFGHIJKLOMNOPQRSTUVWXYZ;
 for($i=0;$i<$length;$i++) 
 { 
  $key .= $pattern{mt_rand(0,35)}; //生成php随机数 
 } 
 return $key; 
} 
echo randomkeys(8);

另一种用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码表

信息在计算机上是用二进制表示的,这种表示法让人理解就很困难。因此计算机上都配有输入和输出设备,这些设备的主要目的就是,以一种人类可阅读的形式将信息在这些设备上显示出来供人阅读理解。为保证人类和设备,设备和计算机之间能进行正确的信息交换,人们编制的统一的信息交换代码,这就是ASCII码表,它的全称是“美国信息交换标准代码”。

八进制 十六进制 十进制 字符 八进制 十六进制 十进制 字符
00 00 0 nul 100 40 64 @
01 01 1 soh 101 41 65 A
02 02 2 stx 102 42 66 B
03 03 3 etx 103 43 67 C
04 04 4 eot 104 44 68 D
05 05 5 enq 105 45 69 E
06 06 6 ack 106 46 70 F
07 07 7 bel 107 47 71 G
10 08 8 bs 110 48 72 H
11 09 9 ht 111 49 73 I
12 0a 10 nl 112 4a 74 J
13 0b 11 vt 113 4b 75 K
14 0c 12 ff 114 4c 76 L
15 0d 13 er 115 4d 77 M
16 0e 14 so 116 4e 78 N
17 0f 15 si 117 4f 79 O
20 10 16 dle 120 50 80 P
21 11 17 dc1 121 51 81 Q
22 12 18 dc2 122 52 82 R
23 13 19 dc3 123 53 83 S
24 14 20 dc4 124 54 84 T
25 15 21 nak 125 55 85 U
26 16 22 syn 126 56 86 V
27 17 23 etb 127 57 87 W
30 18 24 can 130 58 88 X
31 19 25 em 131 59 89 Y
32 1a 26 sub 132 5a 90 Z
33 1b 27 esc 133 5b 91 [
34 1c 28 fs 134 5c 92 \
35 1d 29 gs 135 5d 93 ]
36 1e 30 re 136 5e 94 ^
37 1f 31 us 137 5f 95 _
40 20 32 sp 140 60 96 '
41 21 33 ! 141 61 97 a
42 22 34 " 142 62 98 b
43 23 35 # 143 63 99 c
44 24 36 $ 144 64 100 d
45 25 37 % 145 65 101 e
46 26 38 & 146 66 102 f
47 27 39 ` 147 67 103 g
50 28 40 ( 150 68 104 h
51 29 41 ) 151 69 105 i
52 2a 42 * 152 6a 106 j
53 2b 43 + 153 6b 107 k
54 2c 44 , 154 6c 108 l
55 2d 45 - 155 6d 109 m
56 2e 46 . 156 6e 110 n
57 2f 47 / 157 6f 111 o
60 30 48 0 160 70 112 p
61 31 49 1 161 71 113 q
62 32 50 2 162 72 114 r
63 33 51 3 163 73 115 s
64 34 52 4 164 74 116 t
65 35 53 5 165 75 117 u
66 36 54 6 166 76 118 v
67 37 55 7 167 77 119 w
70 38 56 8 170 78 120 x
71 39 57 9 171 79 121 y
72 3a 58 : 172 7a 122 z
73 3b 59 ; 173 7b 123 {
74 3c 60 174 7c 124 |
75 3d 61 = 175 7d 125 }
76 3e 62 > 176 7e 126 ~
77 3f 63 ? 177 7f 127 del

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
PR值查询 | PageRank 查询
Dec 20 PHP
PHP无刷新上传文件实现代码
Sep 19 PHP
php cc攻击代码与防范方法
Oct 18 PHP
解析php利用正则表达式解决采集内容排版的问题
Jun 20 PHP
php中OR与|| AND与&amp;&amp;的区别总结
Oct 26 PHP
php获取淘宝分类id示例
Jan 16 PHP
php获取字段名示例分享
Mar 03 PHP
CodeIgniter实现更改view文件夹路径的方法
Jul 04 PHP
Parse正式发布开源PHP SDK
Aug 11 PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 PHP
php检查函数必传参数是否存在的实例详解
Aug 28 PHP
PHP基于自定义函数生成笛卡尔积的方法示例
Sep 30 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 #PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
Sep 11 #PHP
Laravel框架验证码类用法实例分析
Sep 11 #PHP
PHP读取XML文件的方法实例总结【DOMDocument及simplexml方法】
Sep 10 #PHP
Laravel中正确地返回HTTP状态码方法示例
Sep 10 #PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
Sep 10 #PHP
mysqli扩展无法在PHP7下升级问题的解决
Sep 10 #PHP
You might like
php实现根据IP地址获取其所在省市的方法
2015/04/30 PHP
js函数调用常用方法详解
2012/12/03 Javascript
JavaScript输入邮箱自动提示实例代码
2014/01/13 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
2015/03/04 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
浅谈JS验证表单文本域输入空格的问题
2017/02/14 Javascript
简单实现js轮播图效果
2017/07/14 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
2017/09/28 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
利用node.js如何创建子进程详解
2017/12/09 Javascript
Angular使用过滤器uppercase/lowercase实现字母大小写转换功能示例
2018/03/27 Javascript
vue封装一个简单的div框选时间的组件的方法
2019/01/06 Javascript
JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】
2019/02/21 Javascript
简单通过settimeout看javascript的运行机制
2019/05/10 Javascript
Python工程师面试必备25条知识点
2018/01/17 Python
NumPy.npy与pandas DataFrame的实例讲解
2018/07/09 Python
python 制作自定义包并安装到系统目录的方法
2018/10/27 Python
python实现大转盘抽奖效果
2019/01/22 Python
python 利用pyttsx3文字转语音过程详解
2019/09/25 Python
Python爬虫教程之利用正则表达式匹配网页内容
2020/12/08 Python
美国专注于健康商品的网站:eVitamins
2017/01/23 全球购物
澳大利亚礼品篮网站:Macarthur Baskets
2019/10/14 全球购物
星空联盟C# .net笔试题
2014/12/05 面试题
大学生毕业的自我鉴定
2013/11/13 职场文书
经典优秀个人求职信分享
2013/12/12 职场文书
歌唱比赛主持词
2014/03/18 职场文书
农村党员对照检查材料
2014/09/24 职场文书
综合测评个人总结
2015/03/03 职场文书
员工加薪申请报告
2015/05/15 职场文书
爱国主义教育基地观后感
2015/06/18 职场文书
2016年暑假家长对孩子评语
2015/12/01 职场文书
高效课堂教学反思
2016/02/24 职场文书
MySQL中一条update语句是如何执行的
2022/03/16 MySQL
yolov5返回坐标的方法实例
2022/03/17 Python
Spring Boot 实现 WebSocket
2022/04/30 Java/Android