Quando ho scritto il "codice di prima" mi riferivo al codice che avevo postato, ossia quello con l'espressione regolare... la mia differisce dalla tua per il fatto che la sostituzione è eventuale... se il link è ben formattato non fa nulla, altrimenti lo cambia... senza contare che richiama una sola volta la funzione str_replace e diciamolo pure... con un po più di criterio