ساختن عدد 10 رقمی تصادفی عیر تکراری در Php
سلام دوستان من دارم یه برنامه مینویسم که که در اون نیاز دارم یه عدد 10 رقمی رو به صورت تصادفی تولید کنم و در دیتا بیس ذخیره کنم ! من نمیخام این عدد هیچ وقت تکرار بشه و همیشه یک عدد جدید بسازه ! ممنون میشم اگه تابعی که این کار رو میکنه به من معرفی کنید .. با تشکر .
کد کامل برنامه برای تولید و چک کردن اعداد تصادفی 10 رقمی
با سلام
راحت ترین کار که همونیه که دوستان گفتند که از 1000000000 شروع کنی و به کمک auto_increment یکی یکی بالا بری که قاعدتا هم باید به کارت بیاد.
ولی حالا اگر فرضا به کارت نیومد، تا جاییکه من می دونم تابع rand( min, max) عدد 10 رقمی تولید نمی کنه و برای تولید عدد 10 رقمی خودت باید یه برنامه بنویسی. این برنامه بی این شکل کار می کنه که برای 10 بار 10 تا عدد تصادفی می سازی و به ترتیب اینا رو جای یکان و دهگان و ... می ذاری تا 10 رقمت کامل بشه.
کد:
for ($i = 0; $i < 10; $i++) {
$j = rand(0,9);
$random += $j*pow(10,$i);
}
این حلقه عدد 10 رقمی رو توی $random می سازه برات. بعد از دیتا بیست عددا رو بخون و توی یک آرایه بریز و به کمک تابع in_array (what_to_find, search_in); بگرد که این عدد تو این آرایه هست یا نه و اگه بود یکی دیگه بساز. حالا برنامه کاملو این زیر برات می نویسم: (فرض کن $stored_values عددهای تصادفی باشه که از قبل داشتی و از دیتابیس خوندی)
[PHP]
do {
for ($i = 0; $i < 10; $i++) {
$j = rand(0,9);
$random += $j*pow(10,$i);
}
} while(in_array($random, $stored_values));
echo $random;
[/PHP]
فقط حتما حواست باشه قبل این کد مقادیر تصادفی که قبلا ساختی رو بریزی توی آرایه $stored_values