Page 1 sur 1

[RESOLU] Erreur avec mt_rand

Posté : 29 août 2011, 21:12
par visualight
Bonjour,

Je rencontre une erreur => Notice: Uninitialized string offset: 16 in ... lorsque je veux générer un "string" aléatoire avec mt_rand

Code : Tout sélectionner

    $characters = "0123456789abcdef";           $string = 0;     for ($i = 0; $i < 50 ; $i++) {         $string .= $characters[mt_rand(0, strlen($characters))];     }  
C'est la ligne : $string = $characters[mt_rand(0, strlen($characters))]; qui semble poser problème. (Uninitialized string offset: 16 qui correspond à $charachers = "0123..")
J'ai un peu près tout tenté mais je trouve pas.

Une idée ?

Merci pour votre aide

Re: Erreur avec mt_rand

Posté : 30 août 2011, 00:14
par moogli
salut,

c'est simple les index commence toujours à zéro (d'ailleurs tu l'indique par le zéro dans le mt_rand).

Mais le strlen retourne 16 ce qui est vrai il y a 16 caractères l'index du dernier caractères est 15 pas 16 :mrgreen:

de plus y a des chances que ta chaine commence toujours par un zéro, déclare plutôt la ainsi $string = '';


@+