Avatar ·

توليد سلسلة عشوائية في PHP: كيف تفعل ذلك بشكل صحيح وآمن؟

مرحباً بالجميع! أنا مطور PHP مبتدئ، أكتب موقعي الأول مع تسجيل المستخدمين. أحتاج إلى توليد رموز عشوائية لتأكيد البريد الإلكتروني وكلمات مرور مؤقتة. لقد بحثت عن طريقة بسيطة، لكني لست متأكداً من صحتها. إلي ما أستخدمه حالياً: ```php function generateRandomString($length = 10) { $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; $charactersLength = strlen($characters); $randomString = ''; for ($i = 0; $i < $length; $i++) { $randomString .= $characters[rand(0, $charactersLength - 1)]; } return $randomString; } echo generateRandomString(32); // مثال: "a3F8kL9mN2..." ``` المشاكل التي أراها: 1. دالة `rand()` — قرأت أنها ليست آمنة cryptographically. 2. لا يوجد ضمان بأن السلسلة ستكون فريدة. 3. غير واضح كيف أجعل السلسلة تحتوي على حروف فقط أو أرقام فقط. أرشدوني، كيف يتم توليد سلاسل عشوائية بشكل صحيح في PHP؟ أحتاج أمثلة.