如何用PHP编写生成特定长度随机字符串的函数?
- 内容介绍
- 文章标签
- 相关推荐
本文共计232个文字,预计阅读时间需要1分钟。
一个简单的函数,没有对生成的内容有特定要求。所以,在生成的字符串长度较小时,可能会出现没有指定类型字符的情况。然而,修改起来也很简单,这里不做额外添加。/** @param{s} */
一个简单的函数,没有对生成的内容作强制设定。所以在生成的字符串长度较少的时候,会出现没有指定类型字符的情况。当然,修改起来也很简单,这里就不做添加了。/** * @param string $type * @param $length * @return string */ function randomString($type="number,upper,lower",$length){ $valid_type = array('number','upper','lower'); $case = explode(",",$type); $count = count($case); //根据交集判断参数是否合法 if($count !== count(array_intersect($case,$valid_type))){ return false; } $lower = "abcdefghijklmnopqrstuvwxyz"; $upper = strtoupper($lower); $number = "0123456789"; $str_list = ""; for($i=0;$i<$count;++$i){ $str_list .= $$case[$i]; } return substr(str_shuffle($str_list),0,$length); } echo randomString("number,upper,lower",12);
本文共计232个文字,预计阅读时间需要1分钟。
一个简单的函数,没有对生成的内容有特定要求。所以,在生成的字符串长度较小时,可能会出现没有指定类型字符的情况。然而,修改起来也很简单,这里不做额外添加。/** @param{s} */
一个简单的函数,没有对生成的内容作强制设定。所以在生成的字符串长度较少的时候,会出现没有指定类型字符的情况。当然,修改起来也很简单,这里就不做添加了。/** * @param string $type * @param $length * @return string */ function randomString($type="number,upper,lower",$length){ $valid_type = array('number','upper','lower'); $case = explode(",",$type); $count = count($case); //根据交集判断参数是否合法 if($count !== count(array_intersect($case,$valid_type))){ return false; } $lower = "abcdefghijklmnopqrstuvwxyz"; $upper = strtoupper($lower); $number = "0123456789"; $str_list = ""; for($i=0;$i<$count;++$i){ $str_list .= $$case[$i]; } return substr(str_shuffle($str_list),0,$length); } echo randomString("number,upper,lower",12);

