Probando y probando el código que me proporcionaron me he encontrado con un pequeño fallo que no deja funcionar bien al script... y la verdad no se me ocurre nada para solucionarlo. He aqui el code que uso:
Código PHP:
// llenamos el array en base a la base de datos. Tenemos el array con todas las definiciones y palabras claves.
$ssql="SELECT * FROM definitions";
$rs=mysql_query($ssql);
while($row=mysql_fetch_array($rs)){
$definitions[$row['keyword']]=$row['textD'];
}
//Ahora buscamos en el texto de la noticia la palabra clave y lo reemplazamos por su codigo en HTML y la definición.
foreach($definitions as $keyword => $text){
$textonoticia=str_replace($keyword,"<acronym title=\"$text\">$keyword</acronym>",$textonoticia);
}
El problema, es que si en mi tabla "definitions" existe un término llamado "EFI", entonces cuando se hace el str_replace() se reemplazan pedazos de palabras como "efimeros", "eficaz", etc...
¿Qué puedo hacer para que esto no ocurra? Un saludo!