Sinnvoll ist es da auch, die Smilies in einer Datenbank (+ "Smiliecodes") anzulegen, oder in einem configfile als Array zu hinterlegen.
Z.B.
$set['smilies'] = array (
"icon_biggrin" => ":D",
"icon_biggrin" => ":-D");
usw.
Also Dateiname => Smiliecode
Falls sich später mal was ändert, beeinträchtigt das nicht die bisherigen Postings. Und wie hier schon angesprochen wurde, erst bei der Generierung der Seite austauschen (also für die Ausgabe), nicht beim Eintrag des Postings ...