Генератор случайных значений uniqid() и чисел mt_rand() в php
X
Заказать сайт
Заказать сайт

Генератор случайных значений uniqid() и чисел mt_rand() в php

4235345345

Время от времени на php нужно создавать переменные, которые бы случайным образом получали значения. Реализацией данной задачи требуют такие скрипты, как случайное появление акций или отображение на сайте разных картинок.

В то же время для создания комбинаций, например паролей лучше использовать функцию uniqid(), которая создат разные значения (с числами и символами). Но начнем с генератора чисел.

rand() и mt_rand() - обе эти функции имеют одинаковый синтаксис и позволяют получать на выходе число от минимального значения к максимальному. На сегодня лучше использовать mt_rand(), так как эта функция новее и ее максимальное число больше, чем в rand(). Кстати, если мы заговорили о числах, то в mt_rand() это 19937, а в rand - 32768.

Синтаксис на примере mt_rand(): mt_rand(min число, max число).

Примеры:
echo mt_rand(); //от 0 до max (219937) лучше и быстрее
echo rand(); //от 0 до max (32768)
echo mt_rand(20, 190); //от 20 до 190

Генератор значений uniqid()

Эта функция позволяет создавать комбинации из чисел и цифр с некоторыми параметрами.

Например, если вывести: echo uniqid(); -то на выходе мы получим примерно следующее: 530c95e7d1e9a.

Но если мы хотим, чтобы комбинация начиналась всегда с какого-то префикса, то пишите его в функции.

Пример: echo uniqid('foo_');//с префиксом foo_530c95e7d1e89

Также возможны и другие варианты вывода:
echo uniqid('',true); //с цифрами, без префикса 530c963acfc7d0.09567611
echo uniqid('rt-',true);//с цифрами, с префиксом rt-530c967e77d287.61190909

Теперь когда вы знаете, как создаются случайные комбинации в php, вы можете их комбинировать, для большей уникальности. Например: echo mt_rand().uniqid();

Но есть еще один небольшой секрет создания всегда уникальных чисел. Он заключается в использовании функции time(). Она считает сколько прошло секунд с 1970 года. Следовательно, при ежесекундном запросе комбинация в цифрах всегда будет разной. Пример: echo time(); Я часто ее использую при сохранении файлов, чтобы имена не совпадали.

| | Генератор случайных значений uniqid() и чисел mt_rand() в php | Время от времени на php нужно создавать переменные, которые бы случайным образом получали значения. Реализацией данной задачи требуют такие скрипты, к | https://blogprogram.ru/wp-content/uploads/2016/09/4235345345-131x131.jpg

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>