সংজ্ঞা এবং ব্যবহার
ফাংশন নামের 'mt' প্রিফিক্স মানে Mersenne Twister। mt_rand() ফাংশনটি Mersenne Twister র্যান্ডম নাম্বার জেনারেটর মেথড ব্যবহার করে একটি ইন্টিজার রিটার্ন করে। এই ফাংশনটি PHP-এর rand() ফাংশনের ড্রপ-ইন রিপ্লেসমেন্ট। ডিফল্ট রেঞ্জ ০ এবং প্ল্যাটফর্ম-স্পেসিফিক mt_getrandmax()-এর মাঝপথে। 64-বিট উইন্ডোজ ওএসে, এটি 2147483647। mt_rand() ফাংশনটি আর্গুমেন্ট ছাড়া কল করা যেতে পারে (যে কেসে ডিফল্ট রেঞ্জ ব্যবহার হবে) অথবা min এবং max প্যারামিটার নির্দিষ্ট করে।
এই ফাংশনটি সবসময় একটি ইন্টিজার রিটার্ন করে।
সিনট্যাক্স
mt_rand ( void ) : int mt_rand ( int $min , int $max ) : int
প্যারামিটার
| ক্রমিক নং | প্যারামিটার ও বিবরণ |
|---|---|
| 1 | min নাম্বার রিটার্ন করার নিচের সীমা। ডিফল্ট ০ |
| 2 | max নাম্বার রিটার্ন করার উপরের সীমা। ডিফল্ট mt_getrandmax() |
রিটার্ন ভ্যালু
PHP mt_rand() ফাংশনটি min এবং max-এর মাঝপথে একটি ইন্টিজার রিটার্ন করে Mersenne Twister র্যান্ডম নাম্বার জেনারেটর টেকনিক ব্যবহার করে। এই ফাংশনটি rand() ফাংশনের চেয়ে চার গুণ দ্রুত। মনে রাখবেন এটি ক্রিপ্টোগ্রাফিক উদ্দেশ্যে ব্যবহার করার পরামর্শ দেওয়া হয় না।
PHP ভার্সন
এই ফাংশনটি PHP 4.x, PHP 5.x এবং PHP 7.x ভার্সনগুলিতে উপলব্ধ।
উদাহরণ
এই উদাহরণটি আর্গুমেন্ট ছাড়া mt_rand() কল করে র্যান্ডম নাম্বার রিটার্ন করে-
<?php echo "random number with no parameters mt_rand() = " . mt_rand() . "\n"; echo "another random number with no parameters mt_rand() = " . mt_rand() . "\n"; ?>
আউটপুট
এটি নিচের ফলাফল তৈরি করতে পারে (র্যান্ডম নাম্বার হওয়ায় প্রতিবার ভিন্ন সংখ্যা আসার সম্ভাবনা বেশি)-
random number with no parameters mt_rand() = 173620951 another random number with no parameters mt_rand() = 749065865
উদাহরণ
নিচের উদাহরণটি mt_rand() ফাংশনের জন্য min এবং max আর্গুমেন্ট নির্দিষ্ট করে-
<?php echo "mt_rand(11,30) = " . mt_rand(11,30) . "\n"; echo "mt_rand(11,30) = " . mt_rand(11,30) . "\n"; ?>
আউটপুট
এটি নিচের ফলাফল তৈরি করতে পারে (র্যান্ডম নাম্বার হওয়ায় প্রতিবার ভিন্ন সংখ্যা আসার সম্ভাবনা বেশি)-
mt_rand(11,30) = 24 mt_rand(11,30) = 14
উদাহরণ
min এবং max প্যারামিটারের ফ্র্যাকশনাল পার্ট বাদ দেওয়া হবে-
<?php echo "mt_rand(10.5,50.95) = " . mt_rand(10.55, 50.95) . "\n"; ?>
আউটপুট
এটি নিচের ফলাফল তৈরি করতে পারে-
mt_rand(10.5,50.95) = 31