Hallo,
Hallo.
Spontan fällt mir ein Array aus den gewünschten Zeichne ein, das mit shuffle($array) zufällig sortiert wird und dann mit array_slice($array, 20) die ersten 20 Elemente - und damit den "Code" - zurückgibt.
Dann würde aber jedes Zeichen höchstens einmal vorkommen.
Julian hat dir ja schon eine schöne Möglichkeit gezeigt ansonsten könntest du auch noch folgendes probieren.
$hash = md5(microtime());
$hash = substr($hash, 0, 20);
Diese Methode ist schneller. Allerdings kommen nur Hexwerte vor (0-9, a-f).
Grüße
Jasmin