在php中如何產生隨機字串
阿新 • • 發佈:2018-12-15
當我們在開發的時候,我們會遇到這些業務場景:如給使用者資訊一個隨機的字串作為一個唯一的認證方式、給商家一個特定的標識、給某些商品一個代表、存為一個session標識作為快取、給redis一個鍵值對等等。我們很多場景都會需要一個隨機字串使用,這裡小王給大家,封裝了一個可以獲取一個隨機字串的一個函式,我這裡使用了26個大小寫的字母組合,你使用時後可以加上字母和數字,還可以加上特殊字元,做些改變都可以。
代買篇:
/** * 產生隨機的字串 * @param int $length * @param int $numeric * @return string */ function random($length = 6, $numeric = 0) { PHP_VERSION < '4.2.0' && mt_srand((double)microtime() * 1000000); if ($numeric) { $hash = sprintf('%0' . $length . 'd', mt_rand(0, pow(10, $length) - 1)); } else { $hash = ''; $chars = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789abcdefghjkmnpqrstuvwxyz'; $max = strlen($chars) - 1; for ($i = 0; $i < $length; $i++) { $hash .= $chars[mt_rand(0, $max)]; } } return $hash; }