欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php生成隨機(jī)數(shù)/生成隨機(jī)字符串的方法小結(jié)【5種方法】

 更新時(shí)間:2020年05月27日 11:43:22   作者:TANKING  
這篇文章主要介紹了php生成隨機(jī)數(shù)/生成隨機(jī)字符串的方法,結(jié)合實(shí)例形式分析了php生成隨機(jī)數(shù)/生成隨機(jī)字符串的5種實(shí)現(xiàn)方法與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了php生成隨機(jī)數(shù)/生成隨機(jī)字符串的方法。分享給大家供大家參考,具體如下:

有時(shí)候我們的項(xiàng)目需要生成隨機(jī)數(shù),但是又不想那么麻煩,那么我們可以使用下面這5種方法生成。

第一種:mt_rand()

<?php
function GetRandStr($length){
 //字符組合
 $str = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
 $len = strlen($str)-1;
 $randstr = '';
 for ($i=0;$i<$length;$i++) {
  $num=mt_rand(0,$len);
  $randstr .= $str[$num];
 }
 return $randstr;
}

//傳入長(zhǎng)度
$number = GetRandStr(6);
echo $number;
?>

第二種:array_rand()數(shù)組

<?php
function make_password($length)
{
 // 密碼字符集,可任意添加你需要的字符
 $str = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 
 'i', 'j', 'k', 'l','m', 'n', 'o', 'p', 'q', 'r', 's', 
 't', 'u', 'v', 'w', 'x', 'y','z', 'A', 'B', 'C', 'D', 
 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L','M', 'N', 'O', 
 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y','Z', 
 '0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
 // 在 $str 中隨機(jī)取 $length 個(gè)數(shù)組元素鍵名
 $keys = array_rand($str, $length); 
 $password = '';
 for($i = 0; $i < $length; $i++)
 {
  // 將 $length 個(gè)數(shù)組元素連接成字符串
  $password .= $str[$keys[$i]];
 }
 return $password;
}
echo make_password(6);
?>

第三種:把字符串打亂,然后返回其中的一小截

<?php
function getrandstr($length){
 $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';
 $randStr = str_shuffle($str);//打亂字符串
 $rands= substr($randStr,0,$length);//substr(string,start,length);返回字符串的一部分
 return $rands;
}
echo getrandstr(6);
?>

第四種:返回任意隨機(jī)數(shù)

<?php
//返回1000-9999其中的一個(gè)隨機(jī)數(shù)
echo rand(1000,9999);
?>

第五種:對(duì)時(shí)間戳進(jìn)行MD5加密,截取其中一部分

<?php
function token($length){
 $str = md5(time());
 $token = substr($str,5,$length);
 return $token;
}
echo token(6);
?>

5種方法,任你選擇,當(dāng)然還有很多方法,例如多個(gè)字符串進(jìn)行拼接,最后做md5加密或SHA1加密,然后返回字符串,這種比較普遍用于token驗(yàn)證或簽名驗(yàn)證。

PS:這里再為大家提供兩款功能類(lèi)似的在線工具供大家參考:

在線隨機(jī)數(shù)字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

在線隨機(jī)字符/隨機(jī)密碼生成工具:
http://tools.jb51.net/aideddesign/rnd_password

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 防止MySQL注入或HTML表單濫用的PHP程序

    防止MySQL注入或HTML表單濫用的PHP程序

    據(jù)悉,如果表單無(wú)擔(dān)保,MySQL形式的惡意代碼注入將攻擊網(wǎng)站。HTML表單如下拉菜單,搜索框和復(fù)選框都容易成為這類(lèi)型侵入的切入點(diǎn)。本文將解釋所發(fā)生的這種攻擊,以及如何防止它。已知的安全事項(xiàng)和背景。
    2009-01-01
  • 淺析php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的比較

    淺析php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的比較

    這篇文章主要介紹了php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的比較,較為詳細(xì)的分析了php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的原理、參數(shù)功能與相關(guān)使用技巧,需要的朋友可以參考下
    2016-11-11
  • 中國(guó)站長(zhǎng)站 For Dede4.0 采集規(guī)則

    中國(guó)站長(zhǎng)站 For Dede4.0 采集規(guī)則

    中國(guó)站長(zhǎng)站 For Dede4.0 采集規(guī)則...
    2007-05-05
  • 使用PHP獲取當(dāng)前url路徑的函數(shù)以及服務(wù)器變量

    使用PHP獲取當(dāng)前url路徑的函數(shù)以及服務(wù)器變量

    本篇文章是對(duì)使用PHP獲取當(dāng)前url路徑的函數(shù)以及服務(wù)器變量的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • 用PHP ob_start()控制瀏覽器cache、生成html實(shí)現(xiàn)代碼

    用PHP ob_start()控制瀏覽器cache、生成html實(shí)現(xiàn)代碼

    Output Control 函數(shù)可以讓你自由控制腳本中數(shù)據(jù)的輸出。它非常地有用,特別是對(duì)于:當(dāng)你想在數(shù)據(jù)已經(jīng)輸出后,再輸出文件頭的情況。
    2010-02-02
  • PHP導(dǎo)入Excel到MySQL的方法

    PHP導(dǎo)入Excel到MySQL的方法

    最近在做一個(gè)系統(tǒng)的重構(gòu)~之前它導(dǎo)入用戶(hù)名和密碼都是要手工黏貼到數(shù)據(jù)庫(kù)的~所以想直接用Excel導(dǎo)入,方便用戶(hù)操作。
    2011-04-04
  • PHP實(shí)現(xiàn)快速向MySQL插入千萬(wàn)條數(shù)據(jù)

    PHP實(shí)現(xiàn)快速向MySQL插入千萬(wàn)條數(shù)據(jù)

    在開(kāi)發(fā)中,有時(shí)需要向數(shù)據(jù)庫(kù)中插入大量數(shù)據(jù),本文將探討如何使用PHP來(lái)快速向MySQL數(shù)據(jù)庫(kù)插入1000萬(wàn)條數(shù)據(jù),并分享一些優(yōu)化方法,以確保性能的最優(yōu)
    2023-08-08
  • PHP實(shí)現(xiàn)二維數(shù)組(或多維數(shù)組)轉(zhuǎn)換成一維數(shù)組的常見(jiàn)方法總結(jié)

    PHP實(shí)現(xiàn)二維數(shù)組(或多維數(shù)組)轉(zhuǎn)換成一維數(shù)組的常見(jiàn)方法總結(jié)

    這篇文章主要介紹了PHP實(shí)現(xiàn)二維數(shù)組(或多維數(shù)組)轉(zhuǎn)換成一維數(shù)組的常見(jiàn)方法,結(jié)合實(shí)例形式總結(jié)分析了PHP數(shù)組遍歷、轉(zhuǎn)換所涉及的array_reduce、array_walk_recursive及array_map函數(shù)常見(jiàn)使用技巧,需要的朋友可以參考下
    2019-12-12
  • PHP 設(shè)計(jì)模式之觀察者模式介紹

    PHP 設(shè)計(jì)模式之觀察者模式介紹

    觀察者模式定義對(duì)象的一對(duì)多依賴(lài),這樣一來(lái),當(dāng)一個(gè)對(duì)象改變狀態(tài)時(shí),它的所有依賴(lài)者都會(huì)收到通知并自動(dòng)更新!
    2012-02-02
  • 淺析PHP原理之變量(Variables inside PHP)

    淺析PHP原理之變量(Variables inside PHP)

    我前面的文章中已經(jīng)講過(guò),PHP的執(zhí)行是通過(guò)Zend engine(ZE, Zend引擎), ZE是用C編寫(xiě)的,大家都知道C是一個(gè)強(qiáng)類(lèi)型語(yǔ)言,也就是說(shuō),在C中所有的變量在它被聲明到最終銷(xiāo)毀,都只能保存一種類(lèi)型的數(shù)據(jù)。 那么PHP是如何在ZE的基礎(chǔ)上實(shí)現(xiàn)弱類(lèi)型的呢
    2013-08-08

最新評(píng)論