Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/01/2019, 10:09
tuadmin
 
Fecha de Ingreso: abril-2006
Mensajes: 583
Antigüedad: 18 años
Puntos: 120
Respuesta: Eliminar caracteres de una cadena según la cantidad total encontrada.

yo te aconsejaria, mejor hacer una lista TAGS permitidos , y con expresiones regulares,OJO que tambien tienes la funcion STRIP_TAGS de php

http://php.net/strip_tags

Código PHP:
Ver original
  1. <?php
  2.  
  3. //$eliminarHtml = array('<p>', "</p>", "<u>", "</u>", "/<a(.+?)>/","<strong>", "</strong>", "<em>", "</em>");
  4. $html =' <b>hola eso es un ejemplo</b>
  5. <a href="http://google">esto es google</a>
  6. <i>esto esta permitido</i>dsd
  7. <h1>este titulo demo</h1>
  8. ';
  9.  
  10. $permitidos=array("i","div","h1");
  11. $html = preg_replace_Callback('#<([a-z0-9A-Z/]+)([^>]*)>#smi',function($criterio_array)
  12. use (&$permitidos)
  13. {//var_dump($criterio_array);
  14.     $tag = trim($criterio_array[1],'/') ;//eliminamos el nombre del tag "/strong" = "strong"
  15.    
  16.     $tag = strtolower($tag);//lo convertimos a minusculas
  17.     if(in_array($tag,$permitidos)){ //si esta en la lista blanca, lo aceptamos
  18.         return $criterio_array[0];//lo devolvemos sin cambios
  19.     }
  20.     //si el proceso sigue, indica que es un tag No permitidos
  21.     return ' ';//todos los tags no permitidos seran puestos como espacios en blanco
  22. },$html);
  23.  
  24. echo $html ;
__________________
Mis aportes te ayudaron??, te hicieron ahorrar valiosos tiempo??, si quieres puedes agradecerme con un Gracias o con una donacion
https://paypal.com/pools/c/8lmNLmWnG9