Ver Mensaje Individual
  #8 (permalink)  
Antiguo 19/11/2014, 11:43
Avatar de GeekGirl
GeekGirl
 
Fecha de Ingreso: julio-2014
Mensajes: 423
Antigüedad: 9 años, 9 meses
Puntos: 44
Respuesta: ¿cómo hago filtro de palabras prohibidas + puntuación?

Te falla porque hay un error de sintaxis en el código. Está mal definido el array. Proba así:

Código PHP:
<?php
function contar($texto){
    
$array array_filter(preg_split('/[\s\.\,]+/s'strtolower($texto)), function($palabra){
        if (
in_array($palabra, array('loca''idiota''viagra'))) return $palabra;
    });
    foreach (
array_count_values($array) as $k => $v) echo $k ': ' $v '<br />';
}
contar('la loCa del bosque era muy loca y entonces enloquecio muy LOCA mente. Locura');
contar('La idiota estuvo insistiendo por lo iDioTa que es. Además, es una loca y su marido consume vIaGRa.');
?>
Igualmente no veo necesidad de seguir posteando código en un tema que ya fue marcado como solucionado Alexis88. El preguntó por qué su función no anaba y se le respondió. Lo de optimizar 10 líneas de código es cosa de cada uno :P Saludos