1. 程式人生 > >php原生 生成隨機字串

php原生 生成隨機字串

/**
 * [生成隨機字串]
 * @param  integer $length [生成的長度]
 * @param  integer $type   [生成的型別]
 * @return [type]   str       [description]
 * @php 隨機碼型別:0,數字+大寫字母;1,數字;2,小寫字母;3,大寫字母;4,特殊字元;-1,數字+大小寫字母+特殊字元
 */
function randCode($length = 5, $type = 0) {
    $arr = array(1 => "0123456789", 2 => "abcdefghijklmnopqrstuvwxyz", 3 => "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 4 => "
[email protected]
#$%^&*(){}[]|"); if ($type == 0) { array_pop($arr); $string = implode("", $arr); } else if ($type == "-1") { $string = implode("", $arr); } else { $string = $arr[$type]; } $count = strlen($string) - 1; for ($i = 0; $i < $length; $i++) { $str[$i] = $string[rand(0, $count)]; $code .= $str[$i]; } return $code; } /** * @ 0-存數字字串;1-小寫字母字串;2-大寫字母字串;3-大小寫數字字串;4-字元; * 5-數字,小寫,大寫,字元混合 * @param integer $type [字串的型別] * @param integer $length [字串的長度] * @param integer $time [是否帶時間1-帶,0-不帶] * @return [string] $str [返回唯一字串] */ function randSole($type = 0,$length = 18,$time=0){ $str = $time == 0 ? '':date('YmdHis',time()); switch ($type) { case 0: for((int)$i = 0;$i <= $length;$i++){ if(mb_strlen($str) == $length){ $str = $str; }else{ $str .= rand(0,9); } } break; case 1: for((int)$i = 0;$i <= $length;$i++){ if(mb_strlen($str) == $length){ $str = $str; }else{ $rand = "qwertyuioplkjhgfdsazxcvbnm"; $str .= $rand{mt_rand(0,26)}; } } break; case 2: for((int)$i = 0;$i <= $length;$i++){ if(mb_strlen($str) == $length){ $str = $str; }else{ $rand = "QWERTYUIOPLKJHGFDSAZXCVBNM"; $str .= $rand{mt_rand(0,26)}; } } break; case 3: for((int)$i = 0;$i <= $length;$i++){ if(mb_strlen($str) == $length){ $str = $str; }else{ $rand = "123456789qwertyuioplkjhgfdsazxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM"; $str .= $rand{mt_rand(0,35)}; } } break; case 4: for((int)$i = 0;$i <= $length;$i++){ if(mb_strlen($str) == $length){ $str = $str; }else{ $rand = "
[email protected]
#$%^&*()_+=-~`"; $str .= $rand{mt_rand(0,17)}; } } break; case 5: for((int)$i = 0;$i <= $length;$i++){ if(mb_strlen($str) == $length){ $str = $str; }else{ $rand = "
[email protected]
#$%^&*()_+=-~`"; $str .= $rand{mt_rand(0,52)}; } } break; } return $str; }
本文出自

相關推薦

php原生 生成隨機字串

/** * [生成隨機字串] * @param integer $length [生成的長度] * @param integer $type [生成的型別] * @return [type] str [description] * @php

php 生成隨機字串

<?php function generateRandomString($length = 15) { return substr(str_shuffle(str_repeat($x='0123456789abcdefghijklmnopqrstuvwxyz

js與php生成隨機字串

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="content-type" content="text/html;charset=gb23

php生成隨機字串函式

  /**    * 生成隨機串    *    * @param   int     $len        * @param   int     $code_type 1全部 2 英文字母 3數字    * @return  string        */    fu

PHP生成隨機字串與唯一字串

程式碼如下: <?php /* * 生成隨機字串 * @param int $length 生成隨機字串的長度 * @param string $char 組成隨機字串的字串 * @return string $string 生成的隨機字串 */ function str

PHP生成隨機字串

function RandomToken($length = 32){ if (function_exists('random_bytes')) { return bin2hex(random_bytes($length)); }

PHP生成隨機字串(字母+數字)

當我們要生成一個隨機字串時,總是先建立一個字元池,然後用一個迴圈和mt_rand()或rand()生成php隨機數,從字元池中隨機選取字元,最後拼湊出需要的長度 function randomkeys($length)    {       $pattern = '1234567890abcdefg

PHP生成隨機字串,必須包含三項 大寫小寫數字

public function random_str() { $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; $str = str_shuffle($str);

php開發筆記(七)用陣列函式實現生成隨機字串

(1)檔案目錄 程式碼是採用了類與物件的方式來生成二維碼的,故在此同時想對require包含檔案的用法做以說明 將getPhp.php和index.php放於同一目錄下,index.php作用是,建立一個生成二維碼的類,然後在getPhp.php標頭檔案中使用requir

php 使用mr_rand生成 隨機字串

通常情況下,當我們要生成一個隨機字串時,總是先建立一個字元池,然後用一個迴圈和mt_rand()或rand()生成php隨機數,從字元池中隨機選取字元,最後拼湊出需要的長度。 本文將以兩種方法介紹生成隨機字串的辦法。 第一種辦法是要建立字元池。 而第二種辦法甚至省去了建立字

Java生成隨機字串生成隨即類

有時候我們在測試的時候需要構建一些物件,每次測試都要構建很麻煩,所以我們可以構建一些類,並給類賦一些隨機值。 @Data @ToString class Person { private Integer id; private Integer age; pr

Linux和Oracle生成隨機字串

Linux 和Oracle裡面如何生成隨機字串: Linux 可以利用uuidgen來生成 [[email protected] ~]$ uuidgen f239007b-14a8-4a38-9925-794f5aad7740 我們要做的就是把裡面的"-"去掉,數字替換為字母,然後擷取想要

生成隨機字串

 《php經典例項》的摘抄記錄 function str_rand($length = 32, $characters = '0987654321qazwsxedcrfvtgbyhnujmikolpQAZWSXEDCRFVTGBYHNUJMIKOLP') { if

shell生成隨機字串

#!/bin/bash i=1 while [ i−le10000]doa=‘echo‘&lt;/dev/urandomtr−dcA−Za−z0−9∣head−c6‘‘echo−n−e&quot;i -le 10000 ] do a=`echo

java生成隨機字串(A-Z0-9)

public static String getRandomChar(int length) { //生成隨機字串 char[] chr = {'0', '1

生成隨機字串並引用

目的:使用隨機字串拼接引用,實現對bbs註冊介面壓測; 隨機生成字串 int itera_num,rand_num,i; char i_name[24]=""; char StrTable[]

Java生成隨機字串,必須包含數字、小寫字母、大寫字母

轉載,來源:http://www.cnblogs.com/dongliyang/archive/2013/04/01/2994554.html 一道演算法題,生成隨機字串,必須包含數字、小寫字母、大寫字母。 為了生成隨機數方便,特別編寫StdRandom類(注1),AP

利用openssl_random_pseudo_bytes和base64_encode函式來生成隨機字串

利用openssl_random_pseudo_bytes和base64_encode函式來生成隨機字串 public static function getRandomString($length = 42)     {         /*          * Use

Java生成隨機字串的程式碼

public static String getRandomString(int length) { //length表示生成字串的長度    String base = "abcdefghijklmnopqrstuvwxyz0123456789";       Ran

js生成隨機字串(數字,字母,特殊字元)

方法 /* ** randomWord 產生任意長度隨機字母數字組合 ** randomFlag 是否任意長度 min 任意長度最小位[固定位數] max 任意長度最大位 ** yuejingge 2