PHP: Eliminar caracteres especiales de un string

closeHola! hace 5 years 11 months 7 days que escribí esta entrada, puede que esta información ya no sea valida en la actualidad, por favor se comprensivo conmigo cuando comentes 🙂

Este codigo es muy util para las personas que necesitan eliminar los caracteres especiales de un string, también es bueno usarlo al recibir variables POST y GET para evitar SQL Injection, en esas variables que sabes que no están compuestas por caracteres espaciales.

function limpiarString($texto)
{
      $textoLimpio ereg_replace("[^A-Za-z0-9]", "", $texto);								
      return $textoLimpio;
}

A partir de PHP 5.3 pueden usar

function limpiarString($texto)
{
      $textoLimpio = preg_replace('([^A-Za-z0-9])', '', $texto);	     					
      return $textoLimpio;
}

Espero que les sea de utilidad.

You may also like...

9 Responses

    • Jodacame dice:

      Hola Alberto, gracias por la info. ya he actualizado la entrada para los que usan php 5.3 (que en la mayoría de hosting todavía están en la 5.2) por problemas de que muchas funciones han desparecido.

      Saludos.

  1. Lerny dice:

    Al preg_replace le falta los parametros de inicio y fin en la expresion quedando así:

    function limpiarString($texto)
    {
    $textoLimpio = preg_replace(“/([^A-Za-z0-9])/, ”, $texto);
    return $textoLimpio;
    }

  2. MauricioCr81 dice:

    Si quiero conservar las tildes?

  3. anthoe21 dice:

    wow esta muy bueno 😀

  4. Willian dice:

    No tienes idea del problemon que tenia gracias a esto!!! gracias

  5. juanse dice:

    quiero conservar los espacios

  6. Marisa dice:

    No funciona con: È É ÊË Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö ×Ø Ù Ú Û Ü Ý Þ ß à á â ãä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õö ÷ ø ùú û ü ý þ ÿ Ā ā Ă ă Ą ą Ć ć Ĉ ĉ Ċ ċČ čĎ ď Đ đ Ē ē Ĕ ĕ Ėė Ę Ę ę Ě ě Ĝ ĝ ĝ Ğğ Ġ ġ Ģ ģ Ĥ ĥ ĥĦ ħ Ĩ ĩ Ī Ī ī Ĭ ĭ Į į İ ı IJ ij Ĵ Ĵ ĵ Ķ ķ ķ ĸĹ ĺ Ļ ļ ļ Ľ ľ Ŀŀ Ł ł Ń Ń ń Ņņ Ň ň ʼn Ŋ ŋ ŋ Ō ō Ŏ ŏ Ő ŐŐ ő Œ œ Ŕ ŕ ŕ Ŗ ŗ Ř ř Ś ś Ŝ ŝ ŝ Ş şŠ š Ţ Ţ ţ Ťť Ŧ ŧ Ũ ũ Ū ū Ŭ Ŭŭ Ů ů Ű ű Ų ų ų
    Etc… Funcion obsoleta, incluso usando decode y encode, etc..

  7. orixjack dice:

    muy buen aporte

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *