Programa ejemplo:::
aclaro que en este programa se lee un archivo de sinonimos con el siguiente formato:
Cita: programa,soft,software
computador,computadora,ordenador
movil,celular
Microsoft,
Código PHP:
<?php
Include "../clases/str_replace.class.php";
$str = "Esta es una <i><b>cadena</b></i> de prueba que incluye por ejemplo un enlace a <a href='http://www.yahoo.com' class='pepe'>Google</a> y <u>algo mas</u> de texto";
$todo = file_get_contents ("../reemplazos.txt");
$lineas = preg_split("/[\r\n]+/",$todo); // lineas
$reemplazo = new replacer();
//$reemplazo->avoidTagsOFF();
foreach ($lineas as $linea){
$words = (explode (',',$linea));
$a = $words[0]; // palabra a buscar
$reemplazo->setSearch($a);
for ($i=1;$i<count($words);$i++){
$ry[$a][]= $words[$i]; // reemplazos
}
}
$reemplazo->setReplacements($ry);
$reemplazo->setSearch('Google'); // seteo palabra a reemplazar
$reemplazo->setOneReplacement('Yahoo'); // agrego un 'sinonimo' mas
$reemplazo->filter(array('prueba','ejemplo')); // filtra palabras
echo $reemplazo->replace($str);
?>
Si el texto incluye por ejemplo la palabra "Microsoft", por no tener ningun sinonimo sera considerada palabra censurada.
Espero les sirva!
aH! las palabras se elijen al azar entre los sinonimos