Manuel | empty


October 7th, 2009

Función para validar RUT en PHP5.3 o inferior

programacion, by admin.

Muchas, por no decir todas, de las funciones que hay en internet para validar el RUT son compatibles con PHP 5.2.X o inferiores.

En PHP 5.3 se dieron de baja varias funciones con el fin de “preparar” el núcleo para PHP 6. Por este motivo me decidí a re-escribir el código de la función que utilizaba para validar el rut.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
    /**
     * Funcion para validar RUT compatible con PHP5.3 o inferior
     *
     *
     * @license     BSD
     * @author      Manuel Diego Paillafil Gamboa
     * @link        http://manuel.radiohead.cl/
     * @email       manuel@radiohead.cl
     *
     * @version     1.0
     * @date        07/10/2009
     *
     * @param string
     *
     * @return bool
     *
     */

    public static function rut($rut)
    {
        $rut    =   strtoupper(preg_replace('{\.|,|-}','',$rut));
        $sub_rut=   substr($rut,0,strlen($rut)-1);
        $sub_dv =   substr($rut,-1);
        $x=2;
        $s=0;
        for($i=strlen($sub_rut)-1;$i>=0;$i--){
            $x  =   ($x>7) ? 2 : $x;
            $s  +=  $sub_rut[$i]*$x;
            $x++;
        }
       
        $dv = 11 - ($s%11);
       
        $dv = ($dv==10) ? 'K' : (($dv==11) ? '0' : $dv);
       
        return ($dv==$sub_dv) ? TRUE : FALSE;
    }

Back Top

Responses to “Función para validar RUT en PHP5.3 o inferior”

Leave a Reply

Your email address will not be published. Required fields are marked *

*