Вибираємо випадковий елемент масиву з array_rand ()
З попередніх постів ми вже досить багато дізналися про масивах. Думаю, що прийшов час трохи попрактикуватися на простих прикладах, які, однак, можуть бути дуже корисні. У цій статті розглянемо функцію array_rand (), за допомогою якої можна вибрати випадковий елемент масиву. А також розглянемо невеликий практичний приклад, як це можна використовувати.
Давайте спочатку трохи розповім про функції array_rand ().За допомогою даної функції ми можемо вибрати випадковий елемент (або елементи) масиву. Так, саме елемент або елементи! Це може бути один елемент або їх може бути кілька. Все залежить від того завдання, яке перед Вами стоїть.
Однак, тут слід врахувати, що функція буде повертати не значення елемента, а його ключ (або ключі, якщо елементів декілька).
Як параметри в дужках функція приймає: ім'я масиву, з яким працюємо і число елементів, які вибираються.
В общем-то все просто! А ще простіше буде, коли ми все це розглянемо на прикладах.
Давайте для початку будемо вибирати один-єдиний випадковий елемент з масиву.
Давайте уявимо, що десь угорі на нашому сайті ми хочемо виводити якісь цитати. Звичайно, цитати повинні змінюватися. Кожен раз заходячи на Ваш сайт, Ви хочете, щоб користувач бачив нову цитату.
Як Ви, напевно, здогадалися, найбільш простий спосіб це реалізувати - це помістити все наявні цитати-вислови в масив, а потім вибирати з цього масиву випадковий елемент і виводити його на екран.
Чим більше у Вас буде цитат в масиві, тим менша ймовірність їх повторення.
Але для прикладу я сильно заморочуватися не буду і розміщу в мій масив 7 висловів.
Далі мені потрібно буде створити змінну, в яку я занесу результат роботи функції array_rand (). У дужках у цій функції буде два аргументи: ім'я нашого масиву і необхідне нам число випадкових елементів.
Як я вже говорила, функція повертатися не значення елемента, а його ключ (або номер у списку). Таким чином, у змінній буде збережений ключ випадкового елемента.
Після мені потрібно буде просто вивести на екран значення потрібного елемента. Для цього вказую ім'я масиву і в квадратних дужках ім'я нашої змінної, яка містить випадковий ключ.
От і все. Подивіться код нижче і, думаю, Ви все зрозумієте остаточно:
Тут в висновок на екран я ще додала трохи стилів прям в тег заголовка. Це не обов'язково і краще стилі задавати через файл таблиці стилів, але для такого простого прикладу я його створювати не стала.
Як результат виконання цього коду, ми отримуємо випадковим чином виведену цитату. Спробуйте оновлювати сторінку, і кожен раз цитата буде змінюватися. Можете подивитися на результат, натиснувши на іконку «Демо» на початку статті або виконайте все це самі (це для Вас набагато краще!).
Тепер давайте потренуємося з висновком кількох випадкових елементів масиву.
У випадку з одним елементом повертається його ключ, а у випадку з кількома випадковими елементами масиву повертається масив ключів. Від цього ми і будемо відштовхуватися при виведенні на екран.
Спочатку створимо масив, в який занесемо 7 різних імен.
Далі створюємо змінну, в яку буде занесена робота функції array_rand (). Тільки тепер в дужках у цій функції в якості другого аргументу вкажемо цифру «2». Це буде означати, що нам потрібні 2 випадкових елемента.
Результатом роботи функції в даній ситуації буде масив, що містить два випадкових ключа елементів з нашого основного масиву.
Тому при виведенні на екран це потрібно врахувати і в квадратних дужках вказати не просто ім'я змінної, а ім'я змінної, потім квадратні дужки і індекс масиву. Так як елемента у нас 2, то в першому випадку індекс буде [0], а в другому [1]. (Ви пам'ятаєте, що індексація в масивах починається з «0».)
От і все. Подивіться на код, щоб Вам стало все більш зрозуміло:
$ Names = array ( 'Маша', 'Саша', 'Надя', 'Міла', 'Андрій', 'Сергій', 'Антон'); $ Rand_names = array_rand ($ names, 2); echo '
'. $ Names [$ rand_names [0]].' і '. $ names [$ rand_names [1]].'
Як результат, на екран будуть виводитися два випадкових імені. Кожен раз при оновленні сторінки імена будуть змінюватися.
Це всього лише два простих прикладу, але думаю, вони допоможуть Вам зрозуміти цю функцію. Якщо Ви зробите все це один раз самостійно, то остаточно у всьому розберетеся.
Звичайно ж, висновок випадкового елемента (або елементів) масиву може бути застосований для вирішення різноманітних (і звичайно ж, більш складних) завдань, але принцип залишиться тим самим.
Сподіваюся, Вам було цікаво.
Вихідний файл можна завантажити в «Вихідні тексти» до уроку.
Наступного разу розберемо ще який-небудь практичний приклад, що стосується масивів, тому що теорія - це добре, але її потрібно підкріплювати і практикою.
З Вами була Анна Котельникова.
Успіхів Вам і до швидких зустрічей!