lcg_value

(PHP 4, PHP 5, PHP 7)

lcg_valueKongruenzgenerator für Pseudozufallszahlen

Beschreibung

float lcg_value ( void )

lcg_value() liefert Zufallszahlen zwischen null und eins. Die Funktion kombiniert zwei gesmischte kongruente Kongruenzgeneratoren mit den Perioden 2^31 - 85 und 2^31 - 249, die Periode der von dieser Funktion generierten Pseudozufallsfolge entspricht dem Produkt dieser beiden Primzahlen.

Achtung

Diese Funktion erzeugt keine kryptographisch sicheren Werte und sollte nicht für kryptographische Zwecke verwendet werden. Wenn kryptographisch sichere Werte benötigt werden, sollten stattdessen die Funktionen random_int(), random_bytes() oder openssl_random_pseudo_bytes() verwendet werden.

Rückgabewerte

Eine Pseudozufallszahl zwischen null und eins (als float)

Siehe auch

  • rand() - Erzeugt eine zufällige Zahl
  • mt_rand() - Erzeugt "bessere" Zufallszahlen

add a note add a note

User Contributed Notes 3 notes

up
10
daniel dot baulig at gmx dot de
7 years ago
Choose your weapon:
<?php
function mt_randf($min, $max)
{
    return
$min + abs($max - $min) * mt_rand(0, mt_getrandmax())/mt_getrandmax();
}
function
lcg_randf($min, $max)
{
    return
$min + lcg_value() * abs($max - $min);
}
function
randf($min, $max)
{
    return
$min + rand(0,getrandmax()) / getrandmax() * abs($max - $min);
}
?>
up
6
rok kralj gmail com
10 years ago
An elegant way to return random float between two numbers:

<?php
function random_float ($min,$max) {
   return (
$min+lcg_value()*(abs($max-$min)));
}
?>
up
-6
Linndows
1 year ago
I think best example...
<?php
$x
=0;
while(
$x<=5){
$x++;
echo
lcg_value()+$x."\n";   }
     echo
lcg_value()+$x-(2*lcg_value()); echo "\n";
?>
To Top