l'esperienza si fa sbagliando...
Chiunque ti abbia detto questo, e' un bugiardo.

Ad ogni modo, ecco la tua funzione, corretta per quanto riguarda la sintassi. Buona fortuna.
Codice PHP:
function faccine($msg){
  
$msg_ok str_replace(":-))""<img src=\"/graphic/emoticons/smiles4.gif\">"$msg);
  
$msg_ok str_replace(":-)""<img src=\"/graphic/emoticons/smiles1.gif\">"$msg_ok);
  
$msg_ok str_replace(":-D""<img src=\"/graphic/emoticons/smiles2.gif\">"$msg_ok);
  
$msg_ok str_replace(":-|""<img src=\"/graphic/emoticons/smiles3.gif\">"$msg_ok);
  
$msg_ok str_replace("]-)""<img src=\"/graphic/emoticons/smiles5.gif\">"$msg_ok);
  
$msg_ok str_replace(">:O""<img src=\"/graphic/emoticons/smiles6.gif\">"$msg_ok);
  return 
$msg_ok;