Tu peux nous faire un mini-trace ?
Si j'ai bien compris tu veux faire dynamiquement :

$msg = str_replace(":$1:","<img src='smileys/1.gif' alt='' />", $msg);
avec $i qui s'incrémente sauf que ton...