Ver Mensaje Individual
  #3 (permalink)  
Antiguo 13/12/2010, 14:55
Avatar de José Molina
José Molina
 
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 10 meses
Puntos: 1
Respuesta: Sacar caracteres de mcrypt

Cita:
Iniciado por Nano_ Ver Mensaje
Saludos

Utiliza la función str_replace
Justamente al principio pense que no se podía aplicar el Replace ya que se trataba de una función para encriptar y desencriptar. Pero finalmente un amigo me envio lo siguiente:

Código PHP:
function urlsafe_b64encode($string) {
    
$data base64_encode($string);
    
$data str_replace(array('+','/','='),array('-','_',''),$data);
    return 
$data;
}

function 
urlsafe_b64decode($string) {
    
$data str_replace(array('-','_'),array('+','/'),$string);
    
$mod4 strlen($data) % 4;
    if (
$mod4) {
        
$data .= substr('===='$mod4);
    }
    return 
base64_decode($data);

Al final quedaría así el llamado:

Código PHP:
function encripta($vars){
    
$iv_size mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256MCRYPT_MODE_ECB);
    
    
$iv mcrypt_create_iv($iv_sizeMCRYPT_RAND);
    
    
$crypted_vars mcrypt_encrypt(
        
MCRYPT_RIJNDAEL_256,
        
$salt,
        
serialize($vars),
        
MCRYPT_MODE_ECB,
        
$iv
    
);
    
    
$content urlsafe_b64encode(serialize(compact('crypted_vars','iv')));
    
    return 
$content;

__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.