Les comparto una pequeña función que hice hace mucho tiempo para ocultar (ofuscar) parte de un texto con php, es muy util cuando queremos mostrar un dato “critico” o “personal” de forma parcial a un usuario, tales como:
- Numero de la tarjeta de crédito
- Parte de la respuesta secreta o pregunta secreta para recuperar una contraseña
- Parte del numero de identificación de una persona
- Código de compra de una e-card
- Y todo lo que se te pueda ocurrir …
<?php /** * Oculta parte de un string * @param string $str Texto a ocultar * @param integer $start Cuantos caracteres dejar sin ocultar al inicio * @param integer $end Cuantos caracteres dejar sin ocultar al final * @author Jodacame * @return string */ function hiddenString($str, $start = 1, $end = 1) { $len = strlen($str); return substr($str, 0, $start) . str_repeat('*', $len - ($start + $end)) . substr($str, $len - $end, $end); } ?>
El uso es muy simple, les dejo un par de ejemplos:
<?php echo hiddenString("123456789"); // Salida 1*******9 echo hiddenString("123456789",5); // Salida 12345***9 echo hiddenString("123456789",5,0); // Salida 12345**** echo hiddenString("123456789",0,5); // Salida ****56789 ?>
Como siempre, espero que les sea de mucha utilidad.
La entrada Ocultar parte de un texto con PHP (123***789) se publicó primero en Jodacame.com :: My Vim! por jodacame