首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 密碼生成類:支援自定義規則、批量生成

     編輯:PHP 綜合知識

功能特性

  • 可配置長度 (4-50)、數量 (1-100)
  • 規則精細控制:字母 (可選/必須/必須大小寫)、數字、特殊字符
  • 批量生成介面 batchGenerate()

核心代碼片段

<?php
class GeneratePassword {
    private $_rule = ['letter'=>1, 'number'=>1, 'special'=>1];
    private $_length = 8;
    private $_num = 1;
    private $_special = '!@#$%^&*()_+=-';

    public function __construct($length=8, $num=1, $rule=[], $special='') {
        // 參數驗證與賦值...
    }

    public function batchGenerate() {
        $passwords = [];
        for ($i=0; $i<$this->_num; $i++) {
            $passwords[] = $this->generate();
        }
        return $passwords;
    }

    private function generate() {
        // 1. 根據規則構建字符池
        // 2. 強制包含必須字符類型
        // 3. 隨機填充至指定長度
        // 4. 打亂順序返回
    }
}
?>

規則配置說明

類型值含義
letter1-51可選 2必須 3必須小寫 4必須大寫 5大小寫皆必須
number1-21可選 2必須
special1-21可選 2必須

使用示例

<?php
$gen = new GeneratePassword(12, 5, [
    'letter' => 5,  // 大小寫必須
    'number' => 2,  // 必須含數字
    'special' => 2  // 必須含特殊字符
]);
print_r($gen->batchGenerate());
/*
Array
(
    [0] => kL8#mP2@qW9!
    [1] => Xy5$zR3*uT6%
    ...
)
*/
?>
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved