php简单随机字符串生成方法示例


Posted in PHP onApril 19, 2017

本文实例讲述了php简单随机字符串生成方法。分享给大家供大家参考,具体如下:

<?php
function rand_str($length,$p='all'){
 $nums = '0123456789';
 $lowers = 'abcdefghijklmnopqrstuvwxyz';
 $uppers = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
 if ($p == 'all') {
 $src = $nums.$lowers.$uppers;
 } else {
 $src = '';
 if (strpos($p, 'num') !== false)
  $src .= $nums;
 if (strpos($p, 'lower') !== false)
  $src .= $lowers;
 if (strpos($p, 'upper') !== false)
  $src .= $uppers;
 }
 return $src? substr(str_shuffle($src), 0, $length) : $src;
}
?>

去网上搜了一下随机字符串的php函数, 发现大部分的实现都用到了循环--这有点低效率啊. 在php中, 有各种各样的函数, 只有你想不到, 没有他想不到. str_shuffle()函数可以轻松做到随机字符串. 不过呢, 还是封装一个吧, 毕竟有的人有只用大写字母和只用数字的需求.

函数的第二个参数num, lower, upper可以随意组合哦.

真正核心的语句只有一行

substr(str_shuffle($src), 0, $length)

作用是将字符串$src乱序并且截取前$length个字符.

PHP 相关文章推荐
第1次亲密接触PHP5(2)
Oct 09 PHP
4.与数据库的连接
Oct 09 PHP
一些常用的php简单命令代码集锦
Sep 24 PHP
PHP中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
Mar 23 PHP
php中将html中的br换行符转换为文本输入中的换行符
Mar 26 PHP
PHP按行读取文件时删除换行符的3种方法
May 04 PHP
php提示Warning:mysql_fetch_array() expects的解决方法
Dec 16 PHP
PHP实现的带超时功能get_headers函数
Feb 10 PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
Oct 18 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
Feb 07 PHP
PHP中abstract(抽象)、final(最终)和static(静态)原理与用法详解
Jun 05 PHP
PHP autoload使用方法及步骤详解
Sep 05 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
Apr 19 #PHP
PHP获取文本框、密码域、按钮的值实例代码
Apr 19 #PHP
PHP实现活动人选抽奖功能
Apr 19 #PHP
thinkphp下MySQL数据库读写分离代码剖析
Apr 18 #PHP
Thinkphp通过一个入口文件如何区分移动端和PC端
Apr 18 #PHP
Yii2汉字转拼音类的实例代码
Apr 18 #PHP
php+resumablejs实现的分块上传 断点续传功能示例
Apr 18 #PHP
You might like
PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法
2011/08/22 PHP
三种php连接access数据库方法
2013/11/11 PHP
php实现mysql备份恢复分卷处理的方法
2014/12/26 PHP
WordPress中调试缩略图的相关PHP函数使用解析
2016/01/07 PHP
php模拟post上传图片实现代码
2016/06/24 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
php获取字符串前几位的实例(substr返回字符串的子串用法)
2017/03/08 PHP
laravel5.6实现数值转换
2019/10/23 PHP
jquery实现文本框鼠标右击无效以及不能输入的代码
2010/11/05 Javascript
侧栏跟随滚动的简单实现代码
2013/03/18 Javascript
鼠标焦点离开文本框时验证的js代码
2013/07/19 Javascript
jquery选择器、属性设置用法经验总结
2013/09/08 Javascript
Javascript 读取操作Sql中的Xml字段
2014/10/09 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
jQuery插件制作之全局函数用法实例
2015/06/01 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
2017/10/26 Javascript
轻松理解vue的双向数据绑定问题
2017/10/30 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
2018/09/17 Javascript
Element input树型下拉框的实现代码
2018/12/21 Javascript
JavaScript提升机制Hoisting详解
2019/10/23 Javascript
windows下wxPython开发环境安装与配置方法
2014/06/28 Python
python用post访问restful服务接口的方法
2018/12/07 Python
ERLANG和PYTHON互通实现过程详解
2019/07/05 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
django执行原始查询sql,并返回Dict字典例子
2020/04/01 Python
CSS3制作炫酷的自定义发光文字
2016/03/28 HTML / CSS
国际化的太阳镜及太阳镜配件零售商:Sunglass Hut
2016/07/26 全球购物
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
澳大利亚在线性感内衣商店:Fantasy Lingerie
2021/02/07 全球购物
我们的节日清明节活动方案
2014/03/05 职场文书
卢旺达饭店观后感
2015/06/05 职场文书
超市主管竞聘书
2015/09/15 职场文书
javascript的setTimeout()使用方法总结
2021/11/20 Javascript