Як згенерувати випадкове та унікальне число в PHP
- Останнє оновлення: 3 Листопада 2023 р.
- Перегляди: 149
- Автор: Адмін
Колеги всім привіт.
У сьогоднішній статті ми поговоримо про те, як у PHP генерувати набір випадкових чисел.
При розробці програми дуже часто доводиться стикатися з тим, що нам потрібно згенерувати унікальне число. Приклад тому може бути те, що вам потрібно вибрати випадкові записи з бази даних, або при завантаженні файлів на сервер нам потрібно згенерувати унікальне ім'я файлу, яке буде містити ім'я тільки з цифр і так далі. При кожному запиті до застосування вашому серверу самостійно буде складно генерувати унікальні числа, і наше завдання допомогти серверу надавши унікальне число для подальшої його обробки.
У PHP існує дуже багато різних варіантів, як отримати унікальне число, і ми сьогодні їх все розглянемо.
У першому варіанті ми будемо використовувати класичну функцію під назвою rand. Функція rand приймає всього два параметри min і max, перший параметр це найменше, за замовчуванням 0, другий параметр це найбільше число. Функція повертає унікальне число між значеннями параметрів min і max типу int.
php> rand(0, 9000000000);
Як бачимо в результаті ми викликали функцію rand три рази, і за ці три рази функція повернула три унікальні числа.
Наступним прикладом ми будемо використовувати функцію mt_rand. Функція теж приймає два параметри min і max і повертає унікальне число між значеннями параметрів min і max типу int. Функція mt_rand вважається поліпшеним варіантом функції rand за рахунок того що mt_rand генерує випадкове число Мерсенна.
php> mt_rand(0, 9000000000);
Як бачимо в результаті ми теж отримали три унікальні числа.
Наступним варіантом ми будемо використовувати функцію random_int. Функція приймає два параметри min і max і повертає унікальне ціле число між значеннями параметрів min і max типу int.
php> random_int(0, 1024);
І в цьому результаті ми отримуємо три унікальні числа.
Останнім простим варіантом ми можемо використовувати функцію time. Функція time повертає кількість секунд з початку епохи Unix (1 січня 1970 00:00:00 GMT) до поточного часу. Функція time ідеально підходить для того, щоб згенерувати унікальний ID для запису в базу даних.
php> time();
У результаті колеги ми сьогодні розібрали чотири функції, за допомогою яких ми можемо згенерувати унікальне число, і яку використовувати функцію це вже вирішувати вам.
Всім дякую, я сподіваюся, що вам моя стаття хоч чимось допомогла.