ensnared / pwgen
1.0.1
2021-07-01 09:04 UTC
Requires
- php: >=7.4
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-09-15 00:12:02 UTC
README
描述
这是一个用于创建随机可发音密码的非常简单的类。默认情况下,它还使用特殊字符和数字,但可以禁用。用户还可以自定义允许的字母组合,以及字符替换。
注意:此类并非基于,也与其名称相同的其他类似项目无关。
要求
- PHP 7.4 或更高版本
- mbstring 扩展
安装
使用 composer 安装
composer require ensnared/pwgen
使用方法
要创建具有默认设置的密码,只需使用 Password::create();。
默认情况下,生成的密码长度在 8 到 12 个字符之间,并且将包括至少 2 个特殊字符和 2 个数字。
配置
以下方法可以配置行为。所有这些方法也有相应的 get 方法。
Password::setConsonants()- 设置密码创建中使用的辅音字母列表。
- 默认为英语字母表中所有辅音字母。
Password::setDigits()- 设置添加到密码末尾的数字数量。
- 默认为 2。
Password::setDoubleConsonantsAfterVowel()- 设置在密码中只在元音字母之后使用的双辅音字母列表。
Password::setDoubleConsonantsAnywhere()- 设置可以在密码中任何位置使用的双辅音字母列表。
Password::setDoubleConsonantsFirst()- 设置只在密码开头使用的双辅音字母列表。
Password::setDoubleVowelsAfterConsonant()- 设置在密码中只在辅音字母之后使用的双元音字母列表。
Password::setDoubleVowelsAnywhere()- 设置可以在密码中任何位置使用的双元音字母列表。
Password::setDoubleVowelsFirst()- 设置只在密码开头使用的双元音字母列表。
Password::setMaxLength()- 设置生成的密码的最大长度。
- 默认为 12
- 请注意,这并不是一个硬性限制,在某些情况下,密码可能长 1-2 个字符,具体取决于是否使用变形和特殊字符。
Password::setMinLength()- 设置生成的密码的最小长度。
- 默认为 8
- 请注意,这并不是一个硬性限制,在某些情况下,密码可能短 1-2 个字符,具体取决于是否使用变形和特殊字符。
Password::setNumSpecialChars()- 设置密码中的特殊字符数量。
- 默认为 1。
- 设置为 0 以禁用。
- 如果使用变形,即使设置为 0,变形后的字符仍将变形。如果不为 0,则变形的特殊字符将计入此数量。
Password::setRareCharacters()- 设置仅有一定几率使用的罕见字符列表。
- 默认为 l, q, w, x, z
Password::setRareCharactersChance()- 设置使用罕见字符的百分比几率。
- 默认为 30。
- 设置为 0 以防止罕见字符被使用。
- 设置为 100 以禁用此功能。
Password::setSpecialChars()- 设置密码创建中使用的特殊字符列表。
- 默认为 !@#$%&*-+?
Password::setVowels()- 设置密码创建中使用的元音字母列表。
- 默认为英语字母表中所有元音字母。
Password::setWarpCharactersChance()- 设置按
getWarpCharactersMap()定义的字符被替换的百分比几率。 - 默认为 75。
- 设置为 0 以禁用变形。
- 设置为 100 以始终变形。
- 设置按
密码::setWarpCharactersMap()- 设置需要被变形(替换)的字符映射。
许可协议
MIT