ساخت آدرس ایمیل تصادفی در php
زمانی که در حال برنامهنویسی وب با php هستید ممکن است بخواهید آدرسهای ایمیل تصادفی و غیرواقعی زیادی ایجاد کنید. مثلا اگر سیستم شما قابلیت ثبت نام با ایمیل و شماره موبایل را میدهد و میخواهید برای کاربرانی که ایمیل وارد نکردهاند یک ایمیل غیرواقعی ثبت کنید.
برای انجام این کار راههای زیادی وجود دارد. در ادامه یک تابع کوتاه و کارآمد را مشاهده میکنید که برای رسیدن به این هدف قابل استفاده است.
|
1 2 3 4 5 6 7 8 |
function random_fake_email( $length = 20, $domain = 'test.test' ) { $name = substr( str_shuffle( str_repeat( 'abcdefghijklmnopqrstuvwxyz0123456789', $length ) ), 0, $length ); return $name . '@' . $domain; } |
این تابع دو پارامتر قبول میکند. پارامتر اول طول نام ایمیل است که به صورت پیشفرض معادل ۲۰ قرار داده شده و پارامتر دوم نام دامنهی مورد نظر است. اینجا از آدرس test.test استفاده شده است که یک دامنهی تستی است و هیچ وقت نمیتواند وجود داشته باشد.
در صورت نیاز میتوانید نام دامنهی دلخواه خودتان را وارد کنید ولی اگر آدرس دامنه واقعی باشد ممکن است باعث ارسال ایمیلهای واقعی و ناخواسته به این آدرس شود.
استفاده از تابع ساخت ایمیل
برای استفاده از این تابع به شکل زیر عمل کنید:
|
1 2 3 4 5 6 7 8 9 |
echo random_fake_email(); // or echo random_fake_email( 15 ); // or echo random_fake_email( 10, 'example.test' ); |
ایمیلهای تولیدشده توسط این تابع به مقدار کافی تصادفی هستند. با این حال همیشه احتمال ایجاد ایمیلهای تکراری در پایگاه داده وجود دارد که میتواند باعث ایجاد خطاهای زمان اجرا شود.
برای جلوگیری از این اتفاق، پیش از درج این ایمیلها باید بررسی کنید که آیا ایمیل تولیدشده تکراری است یا نه. در صورت تکراری بودن، باید یک بار دیگر آدرس ایمیل جدیدی درست کنید.