Text-Smilies durch Grafik-Smilies ersetzen

  • In vielen Foren werden die zunächst geschrieben Smilies mit Doppelpunkt, Minus, Klammer und so weiter nach dem Abschicken als viel schönere Grafiken angezeigt. Wie ersetzt man nun ":-)" durch eine Grafik? Die Lösung des Problems ist die PHP-Funktion "eregi_replace();". Der Beispiel-Codeschnipsel ist folgender:<#$>message = ':-) PC-Special :-)';<#$>message = eregi_replace(':-)', '<img src="smiley.gif" alt="">', <#$>message);echo <#$>message; In der zweiten Zeile wird nun nach allen Vorkommnissen von ":-)" in der Variable "" gesucht und diese Zeichenkette mit "<img src="smiley.gif" alt="">" ersetzt, um statt Text eine Grafik anzuzeigen. Die Grafik selber ist nun der Smiley und sollte unbedingt auch zum Text-Smiley passen. Das Beispiel zeigt nur die Umwandlung eines Smileys. Für weitere müssen Sie ganz einfach entsprechend Zeile zwei weitere hinzufügen (mit natürlich auch anderen Grafiken).

  • Es reicht hier völlig,
    statt eregi_replace str_replace zu verwenden.
    Schon im PHP-Handbuch steht zu str_replace:
    "Falls Sie keine ausgefallenen String-Ersetzungen brauchen,
    sollten Sie immer dieser Funktion den Vorzug vor
    ereg_replace() oder preg_replace() geben."
    Und nicht vergessen, den Alternativtext
    für die Grafik im Image-TAG anzugeben. ;)