array_rand
تابع array_rand
حتما تا به حال پيش اومده كه خواسته باشيم از بين عناصر يك آرايه يك يا بيش از يك عنصر رو به صورت رندوم انتخاب كنيم
راه اول :
1. به دست آوردن تعداد عناصر آرايه با تابعي مثل count
2. استفاده از تابعي مثل rand و ايجاد چند عدد در بازه مورد نظر
3. استفاده از ايندكس هاي بدست آمده
اما راه حل ساده تر و بهتر !
تابع array_rand
اين تابع 2 وروردي داره
اولي يك آرايه هست و اجباري
دومي يك عدد هست و اختياري و اگر وارد نشه 1 در نظر گرفته ميشه
آرايه اولي كه آرايه هست كه قرار هست از بينش چند عنصر انتخاب كنيم
و دومي تعداد عناصري هست كه قرار هست رندوم انتخاب بشند
« چه مقداري توسط اين تابع باز گردانده ميشود
اگر پارامتر دوم تابع وارد نشود يا 1 باشد فقط كليد عنصري كه به صورت رندوم انتخاب شده است ولي در غير اينصورت آرايه اي شامل مجموعه عناصر رندوم انتخاب شده
مثال :
کد PHP:
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>