我要生成兩個字符串的唯一密鑰,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. 如何從一個字符串得到一個字符串,開始和一個特定的字符串