PHP में रैंडम यूनिक अल्फ़ान्यूमेरिक स्ट्रिंग कैसे जनरेट करें?
सभी को नमस्ते! मैं एक शुरुआती PHP डेवलपर हूँ और मुझे एक समस्या का सामना करना पड़ा: सेशन आइडेंटिफ़ायर, कूपन और यूनिक लिंक के लिए रैंडम स्ट्रिंग बनाने की ज़रूरत है। मैंने `rand()` और कॉन्केटनेशन के ज़रिए इसे लागू करने की कोशिश की, लेकिन इसमें डुप्लिकेट या असुरक्षित स्ट्रिंग आ रही हैं।
यहाँ मैंने जो लिखा है:
```php
function generateRandomString($length = 10) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$randomString = '';
for ($i = 0; $i < $length; $i++) {
$randomString .= $characters[rand(0, strlen($characters) - 1)];
}
return $randomString;
}
```
समस्याएँ:
1. बार-बार कॉल करने पर (जैसे लूप में) कभी-कभी एक जैसी स्ट्रिंग जनरेट हो जाती हैं।
2. मैंने सुना है कि `rand()` क्रिप्टोग्राफ़िक रूप से सुरक्षित नहीं है और अनुमान लगाने योग्य है।
3. मुझे नहीं पता कि कैसे गारंटी दी जाए कि स्ट्रिंग यूनिक हो।