Limpiar caracteres especiales en PHP
En este artículo daremos solución para Limpiar caracteres especiales en PHP.
Elimina de tus cadenas de texto los caracteres especiales usando la función preg_replace y una expresión regular. Con esta acción podrás limpiar envíos de información a través de formularios, etc.
Limpiar caracteres especiales en PHP
Los usuarios suelen agregar de forma involuntaria caracteres especiales en formularios y para guardar en base de datos debemos de limpiar por motivos de seguridad y aquí les presentare una función maravillosa para estos temas.
<?php
$texto = "Saludos!+Mi'Nombre €Es&Ped%ro";
$texto = preg_replace('([^A-Za-z0-9])', '', $texto);
echo $texto;
// Salida: SaludosMiNombreEsPedro
?>
Limpiar cadenas de texto con espacios
Si deseamos conservar los espacios podemos aplicar esta forma de programación. Por lo tanto, se han limpiado los caracteres especiales, pero hemos conservado los espacios y podemos programar de la siguiente manera.
<?php
$texto = "Saludos !+Mi Nombre €Es &Ped%ro";
$texto_proceso = preg_replace('([^A-Za-z0-9 ])', '', $texto);
echo $texto_proceso;
// Salida: Saludos Mi Nombre Es Pedro
?>
Permitir un carácter especial
Si queremos mantener un carácter especial podemos agregar ese carácter a la expresión regular, para que no lo elimine, veamos un ejemplo:
<?php
$texto = "Saludos! +Mi Nombre €Es &Ped%ro";
$texto_proceso = preg_replace('([^A-Za-z0-9 !])', '', $texto);
echo $texto_proceso;
// Salida:Saludos! Mi Nombre Es Pedro
?>
Conclusiones
Aplicar esta función en nuestras cadenas de texto es muy sencillo como han podido apreciar. Además, si desean más información de esta grandiosa función pueden acceder a la página oficial del PHP. http://php.net/manual/es/function.preg-replace.php
Estas funciones nos ayudan a limpiar variables de texto ya sean extraídos de una base de datos o de formularios HTML. Sin embargo, nos ayudan a evitar las famosas inyecciones SQL.
Generalmente los envíos a través de formularios son: el método GET y Método POST, fácilmente podemos incorporar esta solución que hemos detallado en este artículo.