Zufallsstring
Thorsten Beuth
- php
0 Thorsten Beuth0 scribble
0 Thomas Mell0 Thomas
Und wieder ein Problem:
Ich wollte einen String zufällig erstellen lassen aus Zahlen... Dazu habe uich folgendes gemacht:
$Value ='';
for ($i = 1; $i <= 10; $i++) {
$buff = rand (0, 9);
$array = array ($i => $buff);
}
for ($i = 1; $i <= 10; $i++) {
settype ($array[$i], "string");
}
for ($i = 1; $i <= 10; $i++) {
$Value += $array[$i];
}
echo $Value;
nur kommt als ergebnis immer 1 raus?! Warum?
Oder kennt jemand vielleicht eine bessere Möglichkeit zum zufälligen Erstellen eines Strings ... am besten mit buchstaben!
Ich kann es zwar auch so machen:
$Term = rand (0, 999999);
settype ($Term, "string");
echo $Term;
aber mit buchstaben wäre mir persöhnlich lieber!
Hallo ,
aber mit buchstaben wäre mir persöhnlich lieber!
// Random-string
srand((double)microtime()*9234567);
$svZeichen = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"; // mögliche zeichen
$svRandom = ""; // Init
while (strlen($svRandom) < 16) // Bilde Random-string
$svRandom .= substr($svZeichen,(rand()%(strlen($svZeichen))),1); // Wähle beliebiges zeichen aus und setze es zu random-string zusammen
habe ich aus nem Onlineshop, welcher so eine ZufallsID generiert.
wenns hilft
gruss
scribble
Hallo,
mein "Standard 8-Zeiler" für solche Sachen sind:
srand(time); $x = '';
for($i=0; $i < 10; $i++) {
switch(mt_rand(1, 3)) {
case 1: $x.= chr(mt_rand(48, 57)); // 0..9
case 2: $x.= chr(mt_rand(65, 90)); // A..Z
case 3: $x.= chr(mt_rand(97, 122)); // a..z
}
}
Das erzeugt dir einen 10-Stelligen String (in $x) der aus Zahlen und klein/großgeschriebenen Buchstaben besteht.
Viele Grüße
Thomas
Hallo Thomas1
Generiere doch einfach eine Session_ID.
Ist, denke ich die einfachste Lösung...
Thomas