當前位置:首頁 » 編程語言 » 隨機字元php

隨機字元php

發布時間: 2025-02-27 16:19:51

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];
?>思想就是這個,看你具體程序怎麼設計了!

㈡ thinkphp怎麼隨機生成字元串

自己用php寫生成隨機字元串方法,然後調用就行,可以把這個方法放到thinkphp裡面的function.php裡面去,控制器中直接調用這個方法就行,也可以在當前控制器裡面定義這個方法,然後用$this->方法名()調用就行。

㈢ php怎樣生成一個32位的隨機字元串

如用戶注冊生成隨機密碼,用戶重置密碼也需要生成一個隨機的密碼。隨機密碼也就是一串固定長度的字元串。下面介紹生成隨機字元串的三種基本方法:

㈣ 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:如何生成隨機的唯一字母數字字元串

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怎麼生成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 隨機生成一個三十位全是數字的字元串,從中找出最大的5個數,輸出他們的乘積。

$arr=array();
$a=array();
for($i=0;$i<30;$i++){
$arr[]=mt_rand(1,999);//生成30個隨機數字
}
while(sizeof($arr)>25){
$max=max($arr);
$a[]=$max;//找到其中最大的5個數字
$max_pos=array_keys($arr,$max);
unset($arr[$max_pos[0]]);
}
echoarray_proct($a);//輸出結果

㈧ PHP生成隨機數的幾種方法

PHP生成隨機數的幾種方法

第一種方法使用mt_rand()函數生成隨機數,示例代碼如下:

function GetRandStr($length){

$str='';

$len=strlen($str)-1;

$randstr='';

for($i=0;$i<$length;$i++){

$num=mt_rand(0,$len);

$randstr .= $str[$num];

}

return $randstr;

$number=GetRandStr(6);

echo $number;

第二種方法使用array_rand()和md5函數生成隨機字元串,代碼如下:

function make_password( $length = 8 ) { // 密碼字元集,可任意添加你需要的字元 $chars = 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', '!', '@','#', '$', '%', '^', '&', '*', '(', ')', '-', '_', '[', ']', '{', '}', '<', '>', '~', '`', '+', '=', ',', '.', ';', ':', '/', '?', '|'); // 在 $chars 中隨機取 $length 個數組元素鍵名 $keys = array_rand($chars, $length); $password = ''; for($i = 0; $i < $length; $i++) { // 將 $length 個數組元素連接成字元串 $password .= $chars[$keys[$i]]; } return $password; }

第三種方法取當前時間戳,代碼示例為:

function get_password( $length = 8 ) { $str = substr(md5(time()), 0, $length);//md5加密,time()當前時間戳 return $str; }

第四種方法使用str_shuffle()函數打亂字元串,生成隨機字元串,代碼如下:

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

第五種方法生成四位隨機驗證碼,代碼如下:

$code = rand(10000, 99999);

比較mt_rand()生成0~1隨機小數的效果與lcg_value()方法:

兩種方法進行執行時間比較,lcg_value()執行時間大約快3倍。

兩種方法進行隨機效果比較,生成的圖像效果對比。

㈨ 用PHP實現,在有內容的文本每一行的開頭隨機添加一串字元。

先說說思路:
1.先獲取file1.txt裡面的內容 根據換行切割 得到一個數組$ex1
2.在用同樣方法將file2.txt裡面的內容切割成數組$ex2
3.循環$ex1數組(應該是file1.txt file2.txt裡面的行數一樣 不一樣就循環file1.txt)
在循環里設置一個隨機數

將分別得到$ex1 $ex2裡面對應內容組合成一條記錄 再保存到file3.txt
最後 file3.txt就是你想要的結果

示列代碼:
<?php
//預定義變數

$contents1 = '';

$contents2 = '';

$contents3 = '';

//得到file1內容
$contents1 = file_get_contents('file1.txt');

//用換行切割數組
$ex1 = explode('
',$contents1);

//得到file1內容
$contents2 = file_get_contents('file2.txt');
//用換行切割數組
$ex2 = explode('
',$contents2);

$count1 = count($ex1);
$count2 = count($ex2);

//循環取值並賦值

for($i = 0; $i< $count1; $i++){
//設置隨機數
$j = rand(0,$count1-1);

$contents3 .= $ex1[$j].$ex2[$i].'
';
}
//寫入文件

file_put_contents('file3.txt',$contents3);

你可以復制這段代碼 再新建file1.txt file2.txt 文件 裡面寫入相應測試內容(注意已換行分割)

運行測試一下

㈩ php如何隨機生成一段隨機長度的文字

PHP生成隨機長度的隨機字元串,本質就是多次調用隨機函數,例如要生成10-20個隨機字元,那麼首先用rand(10,20)生成隨機長度,然後rang(1,26)生成每一個隨機字元即可(如果需要區分大小寫、允許數字需要增加一些控制),最簡單的例子代碼:

<?php
$n=rand(10,20);
$s='';
for($i=1;$i<=$n;$i++)
$s.=chr(ord('a')+rand(1,26)-1);
echo$s;
?>

運行幾次的例子如下:

E:TEMP文件exp>a.php
nzgxatyitkej
E:TEMP文件exp>a.php
jegqruuyvoyre
E:TEMP文件exp>a.php
pqjdiawjmbrgvyrth
熱點內容
atm資料庫 發布:2025-02-27 20:07:18 瀏覽:27
sql表值函數 發布:2025-02-27 20:05:38 瀏覽:21
倉儲存儲量有沒有規定 發布:2025-02-27 19:58:15 瀏覽:552
賞金偵探酒吧密碼如何得到 發布:2025-02-27 19:53:18 瀏覽:371
陰陽師掛機腳本封號 發布:2025-02-27 19:47:26 瀏覽:105
數據的內存存儲 發布:2025-02-27 19:46:40 瀏覽:431
linux的粘貼快捷鍵 發布:2025-02-27 19:34:52 瀏覽:192
捕魚王者哪個更吃配置 發布:2025-02-27 19:34:23 瀏覽:489
php轉小寫 發布:2025-02-27 19:30:32 瀏覽:277
小米手機圖標文件夾 發布:2025-02-27 19:25:38 瀏覽:642