Générer un nombre aléatoire avec pré-définis longueur PHP

Je suis en train de créer une fonction à l'aide de la fonction mt_rand() pour générer un véritable nombre aléatoire, depuis rand() n'est tout simplement pas suffisant.

Le problème est que j'ai besoin de pré-définir la longueur de la nombre, dire que j'ai besoin de 10 chiffres et de nombres aléatoires.

De toute façon, j'ai été déconner et c'est ce que je suis venu avec:

    function randomNumber($length) {
        $min = str_repeat(0, $length-1) . 1;
        $max = str_repeat(9, $length);
        return mt_rand($min, $max);   
    }

En théorie, cela devrait fonctionner (autant que je puisse dire), mais il ne le fait pas. La longueur est complètement aléatoire et il lance tout de même des valeurs négatives.

Des idées?

"dans le but de générer une véritable nombre aléatoire" eh Bien, vous aurez toujours obtenir un nombre pseudo-aléatoire. Même le Mersenne twister ne peut pas vous obtenir vraiment un nombre aléatoire. Le plus proche que vous pouvez obtenir est de random.org avec leur bruit atmosphérique de données.
Peu importe, ce n'est pas la question, la fonction mt_rand() est beaucoup plus aléatoire que rand().
rand(min,max) retourne un entier, alors que dans la gamme de PHP nombres entiers de 32 bits sur un système 32 bits.... rappelez-vous aussi que 0000000001 == 1, si votre portée est de 1 à 9999999999, vous voulez $min = 1 . str_repeat(0, $length-1)
Aussi, avec random.org je ne veux pas avoir à friser leur site web à chaque fois.
Je vais répéter: "rand(min,max) retourne un entier, alors que dans la gamme de PHP nombres entiers de 32 bits sur un système 32 bits"

OriginalL'auteur Karl | 2012-10-31