我要生成两个字符串的唯一密钥,string a
和string b
。 string a
已经是唯一的长度为8到20的密钥,而字符串b不是唯一的,长度为8到20的长度相同。目标密钥必须难以猜测,唯一且固定长度为10个字符。我尝试了mad5()
,uniqueid()
和rand()
函数的某些组合,但目标字符串每次都超过了10个chars
的限制。我怎样才能得到10 chars
的钥匙?从其他两个字符串创建唯一的字符串(一个是独特的,另一种是不)
0
A
回答
1
假设你的目标密钥存储在数据库中。
$string1 = 'some_unique_string';
$string2 = 'any_other_string';
do{
$target_string = sub_str(str_shuffle($string1.$string2),0,10);
$sql='select * from table_name where targetKeyColoumn = "'.$$target_string.'"'; //add sql injection prevention
$result = mysqli_query($dbConectionResource, $sql);
$row_cnt = mysqli_num_rows($result);
}while($row_cnt); //if its 0, come out from loop
echo $target_string;
希望这会有所帮助。
2
你可以把从A和B中的所有字符到一个数组,洗牌数组,然后在循环中随机拉出来,从0到9
相关问题
- 1. 确定一个字符串是不是另一个字符串
- 2. 从另一个字符串中创建一个字符串?
- 3. 当是一个字符串不是一个字符串
- 4. 检查是否可以从另一个字符串中的字符中创建一个字符串
- 5. 确定是否可以从另一个字符串中的字符子集创建一个字符串
- 6. 检查其他字符串的列表是否为%LIKE%另一个字符串
- 7. 判断一个字符串是否是另一个子字符
- 8. 创建一个唯一的字母数字10个字符的字符串
- 9. C - 检查字符串是否是另一个字符串的子字符串
- 10. 提取字符串,它是存在于一个字符串,而不是其他
- 11. 从另一字符串中提取字符串两个特定字符
- 12. 将一个字符串的第一个实例替换为一个变量或其他唯一字符串
- 13. spinner.OnItemClickSelected恢复一个字符串,而不是两个独立的字符串从两个微调
- 14. C - 从另一个字符串中减去一个字符串
- 15. 测试字符串是以另一个字符串开始还是以另一个字符串结尾
- 16. 检查字符串的子是另一个字符串
- 17. 找到一个字符串是否是SML中另一个字符串的子字符串NJ
- 18. 使用字符串连接的XQuery,其中一个参数是字符串,另一个是数字
- 19. 将一个字符串到另一个字符串中的Java
- 20. 在另一个字符串中查找一个字符串的字符串
- 21. PHP - 剥开一个特定的字符串一个字符串
- 22. 从两个字符串数组中返回唯一字符串,连接成一个字符串VBA
- 23. 从另一个太长的唯一数值创建一个固定长度的唯一字符串
- 24. 检查一个字符串是一个字符串模式
- 25. grep的R中两个字符串是一个字符
- 26. 字符串是一个类?
- 27. 检查一个字符串是否都是唯一的字符,空格除外
- 28. 爪哇 - 检查是否字符串在另一个字符串
- 29. 文本长度超过3个字符串而不是用另一个字符串替换其余字符串
- 30. 如何从一个字符串得到一个字符串,开始和一个特定的字符串