lcg_value

(PHP 4, PHP 5, PHP 7, PHP 8)

lcg_value - Генерує псевдовипадкове число, застосовуючи комбінований лінійний конгруентний метод

Опис

lcg_value(): float

Функцияlcg_value() повертає псевдовипадкове значення в діапазоні (0, 1). Функція комбінує два конгруентні генератори з періодами 2^31 - 85 і 2^31 - 249. Період цієї функції дорівнює добутку обох простих чисел.

Застереження

Функція не створює криптографічно захищені значення та не повинна використовуватися для криптографічних цілей або цілей, що вимагають, щоб значення, що повертаються, були недоступні для розгадування.

Якщо потрібна криптографічно безпечна випадкова послідовність, можна використати клас Random\Randomizer з двигуном Random\Engine\Secure. Для простих сценаріїв є функції random_int() і random_bytes() із зручним API криптографічно безпечного генератора псевдовипадкових чисел (CSPRNG), що підтримується операційною системою.

Застереження

Масштабування значення, що повертається для різних інтервалів шляхом множення або додавання (афінного перетворення) може змістити результуюче значення, так як числа з плаваючою точкою не однаково щільні по всьому ряду чисел. Оскільки не всі значення можна точно представити числом з точкою, що плаває, результат афінного перетворення також може повернути значення, що виходять за межі запитаного інтервалу.

Щоб згенерувати випадкове число з плаваючою точкою в межах довільного інтервалу, викликають метод Random\Randomizer::getFloat(). Для генерації випадкового цілого числа в межах довільного інтервалу викликають метод Random\Randomizer::getInt()

Список параметрів

Ця функція не має параметрів.

Значення, що повертаються

Повертає псевдовипадкове число з точкою, що плаває, в діапазоні від 0.0 до 1.0 включно.

Дивіться також

  • Random\Randomizer::getFloat() - Отримує рівномірно обране число з плаваючою точкою
  • Random\Randomizer::getInt() - Отримує рівномірно обране ціле число
  • random_int() - Отримує криптографічно безпечне, рівномірно вибране ціле число