『壹』 php如何生成隨機字元串
方法一
1、在33
–
126中生成一個隨機整數,如35。
2、將35轉換成對應的ASCII碼字元,如35對應#。
3、重復以上1、2步驟n次,連接成n位的密碼。
方法二
1、預置一個的字元串
$chars
,包括
a
–
z,A
–
Z,0
–
9,以及一些特殊字元。
2、在
$chars
字元串中隨機取一個字元。
3、重復第二步n次,可得長度為n的密碼。
方法三
1、預置一個的字元數組
$chars
,包括
a
–
z,A
–
Z,0
–
9,以及一些特殊字元。
2、通過array_rand()從數組$chars中隨機選出$length個元素。
3、根據已獲取的鍵名數組
$keys,從數組$chars取出字元拼接字元串。該方法的缺點是相同的字元不會重復取。
『貳』 PHP 如何隨機生成24位 MD5加密後的字元串
md5是32位的,所以你需要先生成md5,再進行字元串截取,截取24個長度就是24位了。
生成隨機的為了不重復,可以使用當前時間戳,在加上隨機數就行
$date_string = date('Y') . date('m') . date('d') . date('H') . date('i') . date('s') . mt_rand(100000, 999999);
$md5_string = md5($date_string);
$string = substr($md5_string, 0, 24);
echo $string;
『叄』 thinkphp怎麼隨機生成字元串
自己用php寫生成隨機字元串方法,然後調用就行,可以把這個方法放到thinkphp裡面的function.php裡面去,控制器中直接調用這個方法就行,也可以在當前控制器裡面定義這個方法,然後用$this->方法名()調用就行。
『肆』 php如何隨機顯示指定字元串
PHP里有一個內置的隨機函數rand()
兩種用法
第一種,不傳遞任何參數,隨機返回一個int型數據
第二種,傳遞兩個參數,第一個參數小於第二個參數,且必須為int型,隨機返回這兩個int型中間的一個數
你說的網頁每刷新一次,改變一次,是可以做到的,但是你要每隔20秒就換一次,這個就只能javascript了
因為PHP是單請求單響應的,如果要保持與伺服器的連接,可以做到,但是浪費非常多資源不值得。就是說,每20秒繼續執行代碼,執行完暫停
我這里就說每刷新一次的吧
<?php
$string[0]="這里是文本一";
$string[1]="這里是文本二";
$string[2]="這里是文本三";
$string[3]="這里是文本n";
$num = rand(0,3);//這里根據你的需要改變
echo $string[$num];
?>思想就是這個,看你具體程序怎麼設計了!
『伍』 求用php 隨機函數生成一個長度為20的全是數字的字元串
$str = '0123456789';
for($i=0; $i<20; $i++) {
$str .= $str{mt_rand(0, strlen($str))};
}
echo $str;
『陸』 用PHP隨機生成一串字元串,然後將這個字元串中的每個字元通過「|」隔開
<?php
// 參數$var表示30以上的變化幅度,比如為1,就代表30-31之間變化,比如為10,就代表30-40
function generateWeirdStr($var){
$table='';
$len=rand(30,30+$var);
$text='';
for($i=0;$i<$len;$i++){
$ch=$table[rand(0,61)];
$text.=$i>0? '|'.$ch: $ch;
}
return $text;
}
echo generateWeirdStr(10);
==========================
輸出
M|Q|E|P|0|I|c|s|5|6|H|w|e|3|2|Z|K|q|G|D|C|j|n|s|r|O|y|z|O|5|e|X|O|U|9|0|y|r|K
『柒』 php如何生成隨機字元串
方法一
1、在33 – 126中生成一個隨機整數,如35。
2、將35轉換成對應的ASCII碼字元,如35對應#。
3、重復以上1、2步驟n次,連接成n位的密碼。
方法二
1、預置一個的字元串 $chars ,包括 a – z,A – Z,0 – 9,以及一些特殊字元。
2、在 $chars 字元串中隨機取一個字元。
3、重復第二步n次,可得長度為n的密碼。
方法三
1、預置一個的字元數組 $chars ,包括 a – z,A – Z,0 – 9,以及一些特殊字元。
2、通過array_rand()從數組$chars中隨機選出$length個元素。
3、根據已獲取的鍵名數組 $keys,從數組$chars取出字元拼接字元串。該方法的缺點是相同的字元不會重復取。
『捌』 php怎麼生成6位隨機數
通常情況下,當我們要生成一個隨機字元串時,總是先創建一個字元池,然後用一個循環和mt_rand()或rand()生成php隨機數,從字元池中隨機選取字元,最後拼湊出需要的長度。代碼如下:
function randomkeys($length)
{
$pattern = '
ABCDEFGHIJKLOMNOPQRSTUVWXYZ,./&l
t;>?;#:@~[]{}-_=+)(*&^%___FCKpd___0pound;"!'; //字元池
for($i=0;$i<$length;$i++)
{
$key .= $pattern{mt_rand(0,35)}; //生成php隨機數
}
return $key;
}
echo randomkeys(8);
這個php隨機函數能生成XC*=z~7L這樣的字元串,隨機!
『玖』 php:如何生成隨機的唯一字母數字字元串
1. 自己寫代碼產生隨機的數字和字母組合,每產生1個去資料庫查詢該隨機碼是否已存在,如果已存在,則重新產生,直到不重復為止。
缺點:產生速度慢,還要查詢資料庫,當數據量大的時候,可能重復的機率會比較高,要查詢多次資料庫.
2. guid,該方法應該是用的比較多的。
優點:使用簡單方便,不用自己編寫額外的代碼
缺點:佔用資料庫空間相對較大,特別是根據guid查詢速度比較慢(畢竟是字元串)。
3. 主鍵+隨機碼的方式,我們產生的隨機碼保存到資料庫肯定會有個主鍵,用該主鍵+隨機字元來組合。產生步驟:
1) 先從id生成器中獲取id,比如是155.
2)填充成固定位數(比如8位)的字元串(不夠位數的左邊填0,超過位數直接使用該數字),得到:00000155
3)在每個數字後面隨機插入1個字母或其它非數字元號,得到:0A0F0R0Y0H1K5L5M
這樣就可以得到1個隨機的唯一的邀請碼了。
優點:使用也比較簡單,不用查詢資料庫。最大的優點是查詢的時候,可以根據邀請碼直接得到主鍵id,然後根據id去資料庫查詢(速度很快),再比較查詢出來的邀請碼和用戶提交的邀請碼是否一致。
缺點:需要使用id產生器,如果主鍵是資料庫自增長的就不太好用(需要先插入資料庫獲取id,再更新邀請碼)。
4. 有時候產品經理說,我要求邀請碼都是數字的。把方法3變通下就可以實現唯一的純數字隨機碼了。
1) 獲取id: 155
2) 轉換成8進制:233
3) 轉為字元串,並在後面加'9'字元:2339
4)在後面隨機產生若干個隨機數字字元:2003967524987
轉為8進制後就不會出現9這個字元,然後在後面加個'9',這樣就能確定唯一性。最後在後面產生一些隨機數字就可以。
『拾』 求一個生成四位隨機數的PHP代碼
最簡單的代碼:
圖片:
文字:
<?php
echo "四位隨機代碼是:". mt_rand(999, 9999); //隨機值得范圍是999-9999
?>
在PHP中 mt_rand是隨機函數,括弧中是隨機值范圍:從最小值到最大值之間隨機變換。
(10)php生成隨機字元串函數擴展閱讀:
1、mt_rand定義和用法:
mt_rand (PHP 4, PHP 5, PHP 7) —生成更好的隨機數。
2、mt_rand說明:
intmt_rand(void)。
intmt_rand(int$min,int$max)。
很多老的 libc 的隨機數發生器具有一些不確定和未知的特性而且很慢。PHP 的rand()函數默認使用 libc 隨機數發生器。mt_rand()函數是非正式用來替換它的。
如果沒有提供可選參數min和max,mt_rand()返回 0 到mt_getrandmax()之間的偽隨機數。例如想要 5 到 15(包括 5 和 15)之間的隨機數,用mt_rand(5, 15)。
3、參數:
min 可選的、返回的最小值(默認:0)。
max 可選的、返回的最大值(默認:mt_getrandmax())。
4、返回值:
返回min(或者 0) 到max(或者是到mt_getrandmax(),包含這個值)之間的隨機整數。
PHP官網-mt_rand