sábado, 17 de octubre de 2015

Upload images or profile pictures with Slim Framework in PHP

I will explain how to upload profile pictures or images in Slim Framework in PHP.

I am extending this functionality of the register login system youtube tutorial presented by Alex Garrett from codecourse.com.

Adding the upload file functionality in Slim Framework
What  the extended functionality does is:

martes, 6 de octubre de 2015

Validar la CURP de México en PHP

Aquí les presento una función que he creado para validar la CURP. Esto lo hice basándome en la validación del RFC de México en PHP.

El código es el siguiente:
function validate_curp($valor) {     
     if(strlen($valor)==18){         
        $letras     = substr($valor, 0, 4);
        $numeros    = substr($valor, 4, 6);         
        $sexo       = substr($valor, 10, 1);
        $mxState    = substr($valor, 11, 2); 
        $letras2    = substr($valor, 13, 3); 
        $homoclave  = substr($valor, 16, 2);
          if(ctype_alpha($letras) && ctype_alpha($letras2) && ctype_digit($numeros) && ctype_digit($homoclave) && is_mx_state($mxState) && is_sexo_curp($sexo)){ 
            return true; 
        }         
    return false;
     }else{
         return false; 
    } 
}

Asimismo, he creado una función auxiliar para validar las siglas de los Estados de la República Mexicana (la cual es llamada por la función anterior de la CURP):
function is_mx_state($state){     
    $mxStates = [         
        'AS','BS','CL','CS','DF','GT',         
        'HG','MC','MS','NL','PL','QR',         
        'SL','TC','TL','YN','NE','BC',         
        'CC','CM','CH','DG','GR','JC',         
        'MN','NT','OC','QT','SP','SR',         
        'TS','VZ','ZS'     
    ];     
    if(in_array(strtoupper($state),$mxStates)){         
        return true;     
    }     
    return false; 
}

Y otra función para validar el sexo de la persona:
function is_sexo_curp($sexo){     
    $sexoCurp = ['H','M'];     
    if(in_array(strtoupper($sexo),$sexoCurp)){         
       return true;     
    }     
    return false; 
}
Ahora, a manera de ejemplo, para utilizar la función principal:
$la_curp = 'BADD110313HCMLNS09';
//Validar la Curp
if(validate_curp($la_curp)){
 echo '

La CURP '.$la_curp.' es válida

'; }else{ echo '

La CURP '.$la_curp.' es inválida

'; }
¡Es todo!
 

Tags