Scusate ragazzi
ho la seguente espressione regolare:
codice:
preg_replace("/@([\w]+)/",swap_smile("\\1"),$test);
dove la variabile $test vale "fammi ridere @risata"

pesta espressione mi dà come risultato il valore \1 e non capisco come mai.

se sostituisco il secondo parametro con "\\1", mi funziona, xchè mi ritorna esattamente il valore cercato.

swap_smile è una funzione ceh verifica se il parametro passato è incluso in array, se si, la funzione mi restituisce <img src .....> altrimenti mi restituisce una stringa vuota.

mi dite come mai non và ?