php簡單隨機字符串生成方法示例
本文實例講述了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;
}
?>
去網(wǎng)上搜了一下隨機字符串的php函數(shù), 發(fā)現(xiàn)大部分的實現(xiàn)都用到了循環(huán)--這有點低效率啊. 在php中, 有各種各樣的函數(shù), 只有你想不到, 沒有他想不到. str_shuffle()函數(shù)可以輕松做到隨機字符串. 不過呢, 還是封裝一個吧, 畢竟有的人有只用大寫字母和只用數(shù)字的需求.
函數(shù)的第二個參數(shù)num, lower, upper可以隨意組合哦.
真正核心的語句只有一行
substr(str_shuffle($src), 0, $length)
作用是將字符串$src亂序并且截取前$length個字符.
PS:這里再為大家提供兩款功能類似的在線工具供大家參考:
在線隨機數(shù)字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu
高強度密碼生成器:
http://tools.jb51.net/password/CreateStrongPassword
更多關于PHP相關內容感興趣的讀者可查看本站專題:《php字符串(string)用法總結》、《PHP數(shù)據(jù)結構與算法教程》、《php程序設計算法總結》、《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《PHP數(shù)學運算技巧總結》、《PHP數(shù)組(Array)操作技巧大全》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
相關文章
ThinkPHP6使用最新版本Endroid/QrCode生成二維碼的方法實例
這篇文章主要介紹了ThinkPHP6使用最新版本Endroid/QrCode生成二維碼的方法,結合實例形式詳細分析了ThinkPHP6使用最新版本Endroid/QrCode生成二維碼具體步驟、原理、實現(xiàn)方法與相關注意事項,需要的朋友可以參考下2023-07-07

