Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/06/2008, 11:32
f_murciano
 
Fecha de Ingreso: febrero-2004
Mensajes: 157
Antigüedad: 20 años, 2 meses
Puntos: 0
encriptando con base64_encode sin caracteres especiales

Hola a tod@s;

¿Se pueden quitar en la encriptación base64_encode los caracteres especiales ('+','/','=')?

No quiero reemplazarlos por otros (str_replace(array('+','/','='),array('-','_','.'),$data);), si no eliminarlos.

¿Hay alguna manera de hacerlo?

Estas son las funciones que utilizo:
Código PHP:
    function encriptar($string)
    {
      
$data base64_encode($string);
      
$data str_replace(array('+','/','='),array('-','_','.'),$data);
      return 
$data;
    }
    
    function 
desencriptar($string)
    {
      
$data str_replace(array('-','_','.'),array('+','/','='),$string);
      
$mod4 strlen($data) % 4;
      if (
$mod4) {
        
$data .= substr('===='$mod4);
      }
      return 
base64_decode($data);
    } 
Muchas gracias por todo